diff --git a/UI/WebServerResources/js/Scheduler.services.js b/UI/WebServerResources/js/Scheduler.services.js index ebdaa37bf..ee22686a9 100644 --- a/UI/WebServerResources/js/Scheduler.services.js +++ b/UI/WebServerResources/js/Scheduler.services.js @@ -1,2 +1,2 @@ -!function(){"use strict";function c(e){if(this.init(e),this.name&&!this.id){var t=c.$$resource.create("createFolder",this.name);this.$unwrap(t)}}c.$factory=["$q","$timeout","$log","sgSettings","Resource","Preferences","Component","Acl",function(e,t,n,a,i,o,r,s){return angular.extend(c,{$q:e,$timeout:t,$log:n,$$resource:new i(a.activeUser("folderURL")+"Calendar",a.activeUser()),$Preferences:o,$Component:r,$$Acl:s,activeUser:a.activeUser(),$view:null}),c}];try{angular.module("SOGo.SchedulerUI")}catch(e){angular.module("SOGo.SchedulerUI",["SOGo.Common"])}angular.module("SOGo.SchedulerUI").value("CalendarSettings",{EventDragDayLength:96,EventDragHorizontalOffset:3,ConflictHTTPErrorCode:409}).factory("Calendar",c.$factory),c.$defaultCalendar=function(){var e;return"first"==c.$Preferences.defaults.SOGoDefaultCalendar&&(e=_.find(c.$findAll(null,!0),function(e){return e.active}))?e.id:"personal"},c.$add=function(n){var e,t;e=n.isWebCalendar?this.$webcalendars:n.isSubscription?this.$subscriptions:this.$calendars,(t=_.findIndex(e,function(e,t){return"personal"==n.id||"personal"!=e.id&&0e&&this.attachUrls.splice(e,1)},h.prototype.$addDueDate=function(){this.due=new Date,this.due.setMinutes(15*Math.round(this.due.getMinutes()/15)),this.dueDate=this.due.toISOString()},h.prototype.$deleteDueDate=function(){delete this.due,delete this.dueDate},h.prototype.$addStartDate=function(){this.start=new Date,this.start.setMinutes(15*Math.round(this.start.getMinutes()/15))},h.prototype.$deleteStartDate=function(){delete this.start,delete this.startDate},h.prototype.$addRecurrenceDate=function(){var e=new Date;e.setMinutes(15*Math.round(e.getMinutes()/15)),angular.isUndefined(this.repeat.dates)&&(this.repeat={frequency:"custom",dates:[]}),this.repeat.dates.push(e)},h.prototype.$deleteRecurrenceDate=function(e){-1e&&this.repeat.dates.splice(e,1)},h.prototype.$reset=function(){var n=this;angular.forEach(this,function(e,t){"constructor"!=t&&"$"!=t[0]&&delete n[t]}),this.init(this.$shadowData),this.$shadowData=this.$omit()},h.prototype.$reply=function(){var e,t=this,n=[this.pid,encodeURIComponent(this.id)];return this.occurrenceId&&n.push(this.occurrenceId),e={reply:this.reply,delegatedTo:this.delegatedTo,alarm:this.$hasAlarm?this.alarm:{}},h.$$resource.save(n.join("/"),e,{action:"rsvpAppointment"}).then(function(e){return t.$shadowData=t.$omit(),e})},h.prototype.$adjust=function(e){var t=[this.pid,encodeURIComponent(this.id)];return _.every(_.values(e),function(e){return 0===e})?h.$q.when():(this.occurrenceId&&t.push(this.occurrenceId),h.$log.debug("adjust "+t.join("/")+" "+JSON.stringify(e)),h.$$resource.save(t.join("/"),e,{action:"adjust"}))},h.prototype.$save=function(e){var t,n,a,i,o=this;return a=this.$omit(),i=h.$Preferences.$mdDateLocaleProvider,a.startDate=a.start?a.start.format(i,"%Y-%m-%d"):"",a.startTime=a.start?a.start.format(i,"%H:%M"):"",a.endDate=a.end?a.end.format(i,"%Y-%m-%d"):"",a.endTime=a.end?a.end.format(i,"%H:%M"):"",a.dueDate=a.due?a.due.format(i,"%Y-%m-%d"):"",a.dueTime=a.due?a.due.format(i,"%H:%M"):"",a.completedDate=a.completed?a.completed.format(i,"%Y-%m-%d"):"",this.hasCustomRepeat()?"monthly"==this.repeat.frequency&&this.repeat.month.type&&"byday"==this.repeat.month.type&&"relative"!=this.repeat.month.day||"yearly"==this.repeat.frequency&&this.repeat.year.byday?(delete a.repeat.monthdays,a.repeat.days=[{day:this.repeat.month.day,occurrence:this.repeat.month.occurrence.toString()}]):"monthly"!=this.repeat.frequency&&"yearly"!=this.repeat.frequency||!this.repeat.month.type?"custom"==this.repeat.frequency&&this.repeat.dates&&_.forEach(a.repeat.dates,function(e,t,n){n[t]={date:e.format(i,"%Y-%m-%d"),time:e.format(i,"%H:%M")}}):(delete a.repeat.days,"relative"==this.repeat.month.day&&(a.repeat.monthdays=[this.repeat.month.occurrence])):this.repeat.frequency&&"never"!=this.repeat.frequency&&(a.repeat={frequency:this.repeat.frequency}),a.startDate&&this.repeat.frequency&&"never"!=this.repeat.frequency?"until"==this.repeat.end&&this.repeat.until?a.repeat.until=this.repeat.until.stringWithSeparator("-"):"count"==this.repeat.end&&this.repeat.count?a.repeat.count=this.repeat.count:(delete a.repeat.until,delete a.repeat.count):delete a.repeat,"not-specified"==this.status?delete a.status:"completed"!=this.status&&delete a.completedDate,(a.startDate||a.dueDate)&&this.$hasAlarm?!this.alarm.action||"email"!=this.alarm.action||this.attendees&&0',' ',"

"+l("editRepeatingItem")+"

","
"," ",' '+l("button_thisOccurrenceOnly")+"",' '+l("button_allOccurrences")+""," ",""].join(""),controller:c}).then(function(){h.$emit("calendars:list")},function(){}).finally(function(){p(function(){y.$resetGhost()})})),c.$inject=["$scope","$mdDialog","component","params"],u.$inject=["$scope","$mdDialog","component","params","conflictError"]}c={title:"Title",location:"Location",calendarName:"Calendar",start:"Start",priority:"Priority",category:"Category",status:"Status",events:{end:"End"},tasks:{end:"Due Date"}},d.component=y,d.componentType="events",d.selectedList=0,d.selectComponentType=$,d.unselectComponents=function(){_.forEach(y["$"+d.componentType],function(e){e.selected=!1}),d.mode.multiple=0},d.selectAll=function(){_.forEach(y["$"+d.componentType],function(e){e.selected=!0}),d.mode.multiple=y["$"+d.componentType].length},d.searchMode=C,d.toggleComponentSelection=function(e,t){t.selected=!t.selected,d.mode.multiple+=t.selected?1:-1,e.preventDefault(),e.stopPropagation()},d.confirmDeleteSelectedComponents=function(){o.confirm(l("Warning"),l("Are you sure you want to delete the selected components?"),{ok:l("Delete")}).then(function(){var e=_.filter(y["$"+d.componentType],function(e){return e.selected});g.$deleteComponents(e).then(function(){d.mode.multiple=0,h.$emit("calendars:list")})})},d.openEvent=function(e,t){b(e,t,"appointment")},d.openTask=function(e,t){b(e,t,"task")},d.newComponent=D,d.filter=function(e){{if(!e)return y["$query"+d.componentType.capitalize()].filterpopup;y.$filter(d.componentType,{filterpopup:e})}},d.filteredBy=function(e){return y["$query"+d.componentType.capitalize()].filterpopup==e},d.sort=function(e){{if(!e){var t=y["$query"+d.componentType.capitalize()].sort;return c[t]||c[d.componentType][t]}y.$filter(d.componentType,{sort:e})}},d.sortedBy=function(e){return y["$query"+d.componentType.capitalize()].sort==e},d.reload=function(){y.$loaded=y.STATUS.LOADING,g.reloadWebCalendars().finally(function(){h.$emit("calendars:list")})},d.cancelSearch=function(){d.mode.search=!1,y.$filter(d.componentType,{value:""})},d.mode={search:!1,multiple:0},this.$onInit=function(){var e;(e=u).push(n.createHotkey({key:l("hotkey_search"),description:l("Search"),callback:C})),e.push(n.createHotkey({key:l("hotkey_create_event"),description:l("Create a new event"),callback:D,args:"appointment"})),e.push(n.createHotkey({key:l("hotkey_create_task"),description:l("Create a new task"),callback:D,args:"task"})),_.forEach(e,function(e){n.registerHotkey(e)}),s="events","tasksListView"==r.settings.Calendar.SelectedList&&(d.selectedList=1,s="tasks"),$(s,{reload:!0}),h.$on("calendars:list",function(){y.$filter(d.componentType,{reload:!0})}),h.$on("calendar:dragend",k),t.$on("$destroy",function(){_.forEach(u,function(e){n.deregisterHotkey(e)})})},this.ascending=function(){return y["$query"+d.componentType.capitalize()].asc}}e.$inject=["$rootScope","$scope","$q","$timeout","$state","$mdDialog","sgHotkeys","sgFocus","Dialog","Preferences","CalendarSettings","Calendar","Component","Alarm"],angular.module("SOGo.SchedulerUI").controller("CalendarListController",e)}(),function(){"use strict";function e(o,e,t,a,r,n,i,s,c,d){var u=this;u.activeUser=s.activeUser,u.service=d,u.newCalendar=function(e){i.prompt(l("New calendar"),l("Name of the Calendar")).then(function(e){var t=new d({name:e,isEditable:!0,isRemote:!1,owner:UserLogin});t.$id().then(function(){d.$add(t)}).catch(_.noop)})},u.addWebCalendar=function(){function n(e,n,t,a){var i=this,o=t.split("/"),r=o[2];i.title=l("Please identify yourself to %{0}").formatted(r),i.url=t,i.authenticate=function(t){!t.$valid&&t.$error.required||a.setCredentials(i.username,i.password).then(function(e){n.hide()},function(e){t.password.$setValidity("credentials",!1)})},i.cancel=function(){n.cancel()}}i.prompt(l("Subscribe to a web calendar..."),l("URL of the Calendar"),{inputType:"url"}).then(function(t){d.$addWebCalendar(t).then(function(e){angular.isObject(e)&&a.show({parent:angular.element(document.body),clickOutsideToClose:!0,escapeToClose:!0,templateUrl:"UIxWebCalendarAuthDialog",controller:n,controllerAs:"$WebCalendarAuthDialogController",locals:{url:t,calendar:e}})})}),n.$inject=["scope","$mdDialog","url","calendar"]},u.subscribeToFolder=function(e){r.debug("subscribeToFolder "+e.owner+e.name),d.$subscribe(e.owner,e.name).then(function(e){n.show(n.simple().content(l("Successfully subscribed to calendar")).position("top right").hideDelay(3e3))})},u.filter={name:""},u.sortableMode=!1,u.toggleSortableMode=function(){u.sortableMode=!u.sortableMode,u.filter.name=""},u.resetSort=function(){d.saveFoldersOrder()},u.sortableCalendars={scrollableContainer:"#sidenav-content",containment:"md-list",orderChanged:function(){d.saveFoldersOrder(_.flatMap(d.$findAll(),"id"))},accept:function(e,t,n){return e.sortableScope.element[0]==t.element[0]}},this.$onInit=function(){u.categories=_.map(c.defaults.SOGoCalendarCategories,function(e){return{id:e.asCSSIdentifier(),name:e,color:c.defaults.SOGoCalendarCategoriesColors[e]}}),e.$watch(function(){return _.union(_.map(d.$calendars,function(e){return _.pick(e,["id","active","color"])}),_.map(d.$subscriptions,function(e){return _.pick(e,["id","active","color"])}),_.map(d.$webcalendars,function(e){return _.pick(e,["id","active","color"])}))},function(e,n){var t,a,i;t=_.intersectionBy(e,n,"id"),a=_.map(_.filter(t,function(e){var t=_.find(n,{id:e.id});return!_.isEqual(e,t)}),"id"),i=d.$q.when(),0"}))},this.newMessageWithRecipient=function(e,t,n){h(e,[t+" <"+n+">"])},this.edit=function(){var t="vevent"==this.component.component?"Appointment":"Task";r.hide().then(function(){var e="UIx"+t+"EditorTemplate";r.show({parent:angular.element(document.body),clickOutsideToClose:!0,escapeToClose:!0,templateUrl:e,controller:"ComponentEditorController",controllerAs:"editor",locals:{stateComponent:u.component}})})},this.editAllOccurrences=function(){(d=e.$get(this.component.pid).$getComponent(this.component.id)).$futureComponentData.then(function(){u.component=d,u.edit()})},this.reply=function(e){(e||this.component).$reply().then(function(){t.$emit("calendars:list"),i.getAlarms(),r.hide()})},this.replyAllOccurrences=function(){(d=e.$get(this.component.pid).$getComponent(this.component.id)).$futureComponentData.then(function(){d.reply=u.component.reply,d.delegatedTo=u.component.delegatedTo,d.$hasAlarm=u.component.$hasAlarm,d.alarm=u.component.alarm,u.reply(d)})},this.deleteOccurrence=function(){this.component.remove(!0).then(function(){t.$emit("calendars:list"),r.hide()})},this.deleteAllOccurrences=function(){this.component.remove().then(function(){t.$emit("calendars:list"),r.hide()})},this.toggleRawSource=function(n){e.$$resource.post(this.component.pid+"/"+this.component.id,"raw").then(function(e){function t(e,t,n){e.data=n,e.close=function(){t.hide()}}r.hide(),r.show({parent:angular.element(document.body),targetEvent:n,clickOutsideToClose:!0,escapeToClose:!0,template:['',' ','
',"  
"," ",' '+l("Close")+""," ","
"].join(""),controller:t,locals:{data:e}}),t.$inject=["scope","$mdDialog","data"]})},this.copySelectedComponent=function(e){this.component.copyTo(e).then(function(){r.hide(),t.$emit("calendars:list")})},this.moveSelectedComponent=function(e){this.component.moveTo(e).then(function(){r.hide(),t.$emit("calendars:list")})}}function t(t,e,n,a,i,o,r,s,d,c,u,h,p,m){var f,g,y=this;function v(){var e=[];return y.component.start&&y.component.end&&(e=y.component.start.daysUpTo(y.component.end)),_.map(e,function(e){return{stringWithSeparator:e.stringWithSeparator(),getDayString:e.getDayString()}})}function $(){y.attendeesEditor.days=v(),y.component.updateFreeBusy()}this.$onInit=function(){this.service=d,this.component=m,this.categories={},this.showRecurrenceEditor=this.component.$hasCustomRepeat,this.showAttendeesEditor=this.component.attendees&&this.component.attendees.length,this.attendeeConflictError=!1,this.attendeesEditor={days:v(),hours:function(){for(var e=[],t=0;t<=23;t++)e.push(t.toString());return e}()},this.component.start&&(f=new Date(this.component.start.getTime())),this.component.end&&(g=new Date(this.component.end.getTime())),this.component.due&&new Date(this.component.due.getTime())},this.addAttachUrl=function(){var e=this.component.addAttachUrl("");o("attachUrl_"+e)},this.toggleRecurrenceEditor=function(){this.showRecurrenceEditor=!this.showRecurrenceEditor,this.component.$hasCustomRepeat=this.showRecurrenceEditor},this.toggleAttendeesEditor=function(){this.showAttendeesEditor=!this.showAttendeesEditor},this.recurrenceMonthDaysAreRequired=function(){return this.component&&"monthly"==this.component.repeat.frequency&&"bymonthday"==this.component.repeat.month.type},this.changeFrequency=function(){"custom"==this.component.repeat.frequency&&(this.showRecurrenceEditor=!0)},this.changeCalendar=function(){this.component.attendees&&0? *"),"");return y.showAttendeesEditor|=i,y.searchText="",new h({c_cn:_.trim(n,' "'),emails:[{value:t}]})}if(t&&(r.partial=t),angular.isString(e)){for(a="",n=0;n",'
','
",'
',' {{'+n+"block.component.c_priority}}"," {{ "+n+"block.component.summary }}",' ',' ',' ',' ',' '," ",'
',' place ',"
","
","
",'
{{ block.startHour }}
','
{{ block.endHour }}
',""].join("")},link:function(e,t,n){var a,i,o;_.has(n,"sgCalendarGhost")||(a=100/e.block.siblings,i=e.block.position*a,0===(o=100-(e.block.position+1)*a)&&(o=10),t.css("left",i+"%"),t.css("right",o+"%"),e.block.component&&e.block.component.c_isallday||(t.addClass("starts"+e.block.start),t.addClass("lasts"+e.block.length)),e.block.userState&&t.addClass("sg-event--"+e.block.userState),e.block.component&&(t.addClass("bg-folder"+e.block.component.pid),t.addClass("contrast-bdr-folder"+e.block.component.pid),0===e.block.component.c_isopaque&&t.addClass("sg-event--transparent"),0===e.block.component.c_status&&t.addClass("sg-event--cancelled")))}}}e.$inject=["CalendarSettings"],angular.module("SOGo.SchedulerUI").directive("sgCalendarDayBlock",e)}(),function(){"use strict";angular.module("SOGo.SchedulerUI").directive("sgCalendarDayTable",function(){return{restrict:"E",scope:{blocks:"=sgBlocks",day:"@sgDay",clickBlock:"&sgClick"},template:["'].join("")}})}(),function(){"use strict";function e(r,e,f,g,s){return{restrict:"A",require:["^sgCalendarDay","^sgCalendarScrollView"],link:function(c,l,e,t){var n,d,u,h,p;n=l[0],d=t[0],u=t[1],h=-1,l.addClass("sg-event--ghost md-whiteframe-3dp ng-hide");var a=r.$on("calendar:dragstart",function(){var e,t,n;c.block=s.$ghost,(t=d.calendarData())&&(h=t.index,e=t.pid,p=c.block.pointerHandler.originalCalendar.index);e||(e=c.block.component.pid);(n=c.block.component.blocks[0].userState)&&l.addClass("sg-event--"+n);l.addClass("bg-folder"+e)}),i=r.$on("calendar:drag",function(){var e,t,n,a,i,o,r,s;if(e=!1,g.$view&&g.$view.type==u.type){if(t="multiday-allday"===u.type,n=c.block.component.c_isallday,a=c.block.pointerHandler.currentEventCoordinates.dayNumber,i=c.block.pointerHandler.currentEventCoordinates.start,r=c.block.pointerHandler.currentEventCoordinates.duration,s=f.EventDragDayLength-i,angular.isUndefined(r))return;for(s<(o=r)&&(o=s),-1f.EventDragDayLength&&(o=f.EventDragDayLength),-1','
",' '," {{ ::component.c_title }}",' ',' ',' ',' ',' '," ",'
',' access_time ',"
",'
',' place ',"
",""].join("")},link:function(e,t,n){e.component.viewable&&t.addClass("md-clickable");e.component.userstate&&t.addClass("sg-event--"+e.component.userstate);t.addClass("bg-folder"+e.component.pid),t.addClass("contrast-bdr-folder"+e.component.pid),0===e.component.c_isopaque&&t.addClass("sg-event--transparent");0===e.component.c_status&&t.addClass("sg-event--cancelled")}}}e.$inject=["CalendarSettings"],angular.module("SOGo.SchedulerUI").directive("sgCalendarListEvent",e)}(),function(){function e(r,e,t,n,s,i,a,o,c,d,u){var h=this;this.$onInit=function(){this.editMode=!1},this.$postLink=function(){this.clickableElement=t.find("p")[0],this.nameElements=this.clickableElement.getElementsByClassName("sg-calendar-name"),this.inputContainer=t.find("md-input-container")[0],this.inputElement=t.find("input")[0],this.moreOptionsButton=_.last(t.find("md-icon")),this.updateCalendarName()},this.updateCalendarName=function(){_.forEach(this.nameElements,function(e){e.innerHTML=h.calendar.name})},this.editFolder=function(e){e.stopPropagation(),e.preventDefault(),this.editMode=!0,this.inputElement.value=this.calendar.name,this.clickableElement.classList.add("ng-hide"),this.inputContainer.classList.remove("ng-hide"),e.srcEvent&&"touchend"==e.srcEvent.type?n(function(){h.inputElement.focus(),h.inputElement.select()},200):(this.inputElement.select(),this.inputElement.focus()),this.panel&&this.panel.close()},this.saveFolder=function(e){this.inputElement.disabled||(this.calendar.name=this.inputElement.value,this.inputElement.disabled=!0,this.calendar.$rename().then(function(e){h.editMode=!1,h.inputContainer.classList.add("ng-hide"),h.clickableElement.classList.remove("ng-hide"),h.updateCalendarName()},function(){h.editMode=!0,h.inputElement.value=h.calendar.name,n(function(){h.inputElement.focus(),h.inputElement.select()},200)}).finally(function(){h.inputElement.disabled=!1}))},this.revertEditing=function(){this.editMode=!1,this.clickableElement.classList.remove("ng-hide"),this.inputContainer.classList.add("ng-hide"),this.inputElement.value=this.calendar.name},this.confirmDelete=function(){this.calendar.isSubscription?this.calendar.$delete().catch(function(e,t){d.alert(l('An error occured while deleting the calendar "%{0}".',h.calendar.name),l(e.error))}):d.confirm(l("Warning"),l('Are you sure you want to delete the calendar "%{0}"?',this.calendar.name),{ok:l("Delete")}).then(function(){h.calendar.$delete().catch(function(e,t){d.alert(l('An error occured while deleting the calendar "%{0}".',h.calendar.name),l(e.error))})})},this.showMenu=function(o){var e=i.newPanelPosition().relativeTo(this.moreOptionsButton).addPanelPosition(i.xPosition.ALIGN_START,i.yPosition.ALIGN_TOPS),t=i.newPanelAnimation().openFrom(this.moreOptionsButton).duration(100).withAnimation(i.animation.FADE),n={attachTo:angular.element(document.body),locals:{itemCtrl:this,calendar:this.calendar,editFolder:angular.bind(this,this.editFolder),confirmDelete:angular.bind(this,this.confirmDelete)},bindToController:!0,controller:a,controllerAs:"$menuCtrl",position:e,animation:t,targetEvent:o,templateUrl:"UIxCalendarMenu",trapFocus:!0,clickOutsideToClose:!0,escapeToClose:!0,focusOnOpen:!0};function a(e,n,a,t){var i=this;this.showOnly=function(){_.forEach(u.$findAll(),function(e){i.calendar.id==e.id?e.active=1:e.active=0})},this.showAll=function(){_.forEach(u.$findAll(),function(e){e.active=1})},this.showProperties=function(){var e=this.calendar.color;function t(e,t,n){var a=this;a.calendar=new u(n.$omit()),a.saveProperties=function(e){e.$valid&&(a.calendar.$save(),n.init(a.calendar.$omit()),t.hide())},a.close=function(){t.cancel()},e.$watch(function(){return a.calendar.color},function(){n.color=a.calendar.color})}n.show({templateUrl:this.calendar.id+"/properties",controller:t,controllerAs:"properties",clickOutsideToClose:!0,escapeToClose:!0,locals:{srcCalendar:this.calendar}}).catch(function(){i.calendar.color=e}),t.$inject=["$scope","$mdDialog","srcCalendar"]},this.showLinks=function(){function e(e,t){this.calendar=t,this.close=function(){e.hide()}}n.show({parent:angular.element(document.body),clickOutsideToClose:!0,escapeToClose:!0,templateUrl:this.calendar.id+"/links",controller:e,controllerAs:"links",locals:{calendar:this.calendar}}),e.$inject=["$mdDialog","calendar"]},this.importCalendar=function(){function e(e,o,t){function n(e){var t=0===e.type.indexOf("text")||/\.(ics)$/.test(e.name);return t||s.show({template:["",'
',' error_outline'," "+l("Select an iCalendar file (.ics).")+"","
","
"].join(""),position:"top right",hideDelay:3e3}),t}this.uploader=new a({url:ApplicationBaseURL+[t.id,"import"].join("/"),autoUpload:!0,queueLimit:1,filters:[{name:n,fn:n}],onSuccessItem:function(e,t,n,a){var i;o.hide(),0===t.imported?i=l("No event was imported."):(i=l("A total of %{0} events were imported in the calendar.",t.imported),r.$emit("calendars:list")),s.show(s.simple().content(i).position("top right").hideDelay(3e3))},onErrorItem:function(e,t,n,a){s.show({template:["",'
',' error_outline'," "+l("An error occurred while importing calendar.")+"","
","
"].join(""),position:"top right",hideDelay:3e3})}}),this.close=function(){o.hide()}}n.show({parent:angular.element(document.body),targetEvent:o,clickOutsideToClose:!0,escapeToClose:!0,templateUrl:"UIxCalendarImportDialog",controller:e,controllerAs:"$CalendarImportDialogController",locals:{folder:this.calendar}}),e.$inject=["scope","$mdDialog","folder"]},this.share=function(){this.calendar.$acl.$users().then(function(){n.show({templateUrl:i.calendar.id+"/UIxAclEditor",controller:"AclController",controllerAs:"acl",clickOutsideToClose:!0,escapeToClose:!0,locals:{usersWithACL:i.calendar.$acl.users,User:t,folder:i.calendar}})})}}i.open(n).then(function(e){(h.panel=e).panelEl.one("click",function(){e.close()})}),a.$inject=["mdPanelRef","$mdDialog","FileUploader","User"]}}e.$inject=["$rootScope","$scope","$element","$timeout","$mdToast","$mdPanel","$mdMedia","$mdSidenav","sgConstant","Dialog","Calendar"],angular.module("SOGo.SchedulerUI").controller("sgCalendarListItemController",e).directive("sgCalendarListItem",function(){return{restrict:"C",scope:{},bindToController:{calendar:"=sgCalendar"},template:['','

',' ',' error',' ',' ',"

",'',' ',"",''," drag_handle","",'more_vert'].join(""),controller:"sgCalendarListItemController",controllerAs:"$ctrl"}})}(),function(){"use strict";angular.module("SOGo.SchedulerUI").directive("sgCalendarMonthDay",function(){return{restrict:"E",scope:{blocks:"=sgBlocks",day:"@sgDay",clickBlock:"&sgClick"},template:["'].join("")}})}(),function(){"use strict";angular.module("SOGo.SchedulerUI").directive("sgCalendarMonthEvent",function(){return{restrict:"E",scope:{block:"=sgBlock",clickBlock:"&sgClick"},replace:!0,template:function(e,t){var n=_.has(t,"sgCalendarGhost")?"":"::";return['
','
",' {{ '+n+"block.component.startHour }}",' {{'+n+"block.component.c_priority}}"," {{ "+n+"block.component.summary }}",' ',' ',' ',' ',' '," ","
"].join("")},link:function(e,t,n){_.has(n,"sgCalendarGhost")||(e.block.userState&&t.addClass("sg-event--"+e.block.userState),e.block.component&&(t.addClass("bg-folder"+e.block.component.pid),0===e.block.component.c_isopaque&&t.addClass("sg-event--transparent"),0===e.block.component.c_status&&t.addClass("sg-event--cancelled")))}}})}(),function(){"use strict";function e(c,l,e,t,d,n,u,h,p){return{restrict:"A",scope:{type:"@sgCalendarScrollView"},controller:a,link:function(e,a,t,i){var o,r,n;function s(e,t){this.$element=e,this.element=e[0],this.type=t,this.quarterHeight=this.getQuarterHeight(),this.scrollStep=6*this.quarterHeight,this.dayNumbers=this.getDayNumbers(),this.maxX=this.getMaxColumns(),this.deregisterDragStart=c.$on("calendar:dragstart",angular.bind(this,this.onDragStart)),this.deregisterDragStop=c.$on("calendar:dragend",angular.bind(this,this.onDragEnd)),this.bindedUpdateCoordinates=angular.bind(this,this.updateCoordinates),this.bindedUpdateFromPointerHandler=angular.bind(this,this.updateFromPointerHandler),this.updateCoordinates(),angular.element(l).on("resize",this.bindedUpdateCoordinates)}o=null,r=e.type,n="multicolumndayview"==a.attr("sg-view"),i.isMultiColumn=n,d(function(){var e,t,n;o=new s(a,r),"monthly"!=r&&p.defaults.SOGoDayStartTime&&(e=p.defaults.SOGoDayStartTime.split(":"),t=document.getElementById("hour"+parseInt(e[0])),n=parseInt(e[1])*o.quarterHeight,o.element.scrollTop=t.offsetTop+n);i.quarterHeight=o.quarterHeight}),e.$on("$destroy",function(){o&&o.$destroy()}),s.prototype={$destroy:function(){this.deregisterDragStart(),this.deregisterDragStop(),this.$element.off("mousemove",this.bindedUpdateFromPointerHandler),angular.element(l).off("resize",this.bindedUpdateCoordinates)},onDragStart:function(){this.$element.on("mousemove",this.bindedUpdateFromPointerHandler),this.updateCoordinates(),this.updateFromPointerHandler()},onDragEnd:function(){this.$element.off("mousemove",this.bindedUpdateFromPointerHandler),u.$view=null},getQuarterHeight:function(){var e,t,n=null;return e=document.getElementById("hour0"),t=document.getElementById("hour23"),e&&t&&(n=(t.offsetTop-e.offsetTop)/92),n},getDayDimensions:function(e){var t,n,a,i,o,r,s;return n=t=a=i=0,0<(o=this.element.getElementsByClassName("day")).length&&(n=(r=o[0].getBoundingClientRect()).height,t=r.width,a=r.left-e,0<(s=o[0].getElementsByClassName("sg-calendar-tile-header")).length&&(i=s[0].clientHeight)),{height:n,width:t,offset:{left:a,top:i}}},getDayNumbers:function(){var e;return e=this.element.getElementsByTagName("sg-calendar-day"),_.map(e,function(e,t){return n?t:parseInt(e.attributes["sg-day-number"].value)})},getMaxColumns:function(){var e,t=0;return"monthly"==this.type?(e=this.element.getElementsByTagName("md-grid-list")[0],t=parseInt(e.attributes["md-cols"].value)-1):t=this.element.getElementsByClassName("day").length-1,t},updateCoordinates:function(){var e,t;e=this.element.getBoundingClientRect(),t=this.getDayDimensions(e.left),angular.extend(this,{coordinates:{x:e.left,y:e.top},dayHeight:t.height,dayWidth:t.width,daysOffset:t.offset.left,topOffset:t.offset.top})},updateFromPointerHandler:function(){var e,t,n,a,i,o;e=h.$ghost.pointerHandler,this.coordinates&&e&&(t=e.getContainerBasedCoordinates(this))&&(u.$view=this,n=(new Date).getTime(),(!this.lastScroll||n>this.lastScroll+100)&&(this.lastScroll=n,(a=t.y-this.scrollStep)<0?(a<(i=-this.element.scrollTop)&&(a=i),this.element.scrollTop+=a):0<(o=(a=t.y+this.scrollStep)-this.element.clientHeight)&&(this.element.scrollTop+=o)))}}}}}function a(e){this.type=e.type}e.$inject=["$rootScope","$window","$document","$q","$timeout","$mdGesture","Calendar","Component","Preferences"],a.$inject=["$scope"],angular.module("SOGo.SchedulerUI").directive("sgCalendarScrollView",e)}(),function(){"use strict";angular.module("SOGo.SchedulerUI").directive("sgCategoryStylesheet",function(){return{restrict:"E",require:"ngModel",scope:{ngModel:"="},replace:!0,template:['"].join("")}})}(),function(){"use strict";function e(m,a,f,g,y,c,v){return{restrict:"CA",require:"^sgCalendarDay",link:function(u,h,e,p){if(u.block){if(!u.block.component.editable||u.block.userState)return void h.removeClass("sg-draggable-calendar-block");!function(){var e,t,n,a,i,o,r,s,c,l;if(u.block.length<3)return;e=u.block.component,t=u.block.dayIndex,n=_.findIndex(e.blocks,["dayIndex",t]),a=0===n,i=n===e.blocks.length-1,(o=angular.element('
')).addClass("bdr-folder"+e.pid),e.c_isallday||"SG-CALENDAR-MONTH-DAY"===h[0].parentNode.tagName?(a&&(r=angular.element('
').append(o),h.append(r)),i&&(s=angular.element('
').append(o.clone()),h.append(s))):(a&&(c=angular.element('
').append(o),h.append(c)),i&&(l=angular.element('
').append(o.clone()),h.append(l)))}()}function t(e){var t,n,a,i;e.stopPropagation(),e.target.scrollHeight>e.target.clientHeight+1&&(a=e.target.getBoundingClientRect(),i=a.left+a.width-18,e.pageX>i)||(t="move-event",u.block&&u.block.component?"dragGrip-top"==e.target.className||"dragGrip-left"==e.target.className?t="change-start":"dragGrip-bottom"!=e.target.className&&"dragGrip-right"!=e.target.className||(t="change-end"):t="change-end",(n=new s(t)).initFromEvent(e),v.$ghost.pointerHandler=n,angular.element(document).one("mouseup",r),angular.element(document).on("mousemove",o))}function o(e){var t=v.$ghost.pointerHandler;a(function(){t.updateFromEvent(e)})}function r(e){var t,n;t=u.block,n=v.$ghost.pointerHandler,angular.element(document).off("mousemove",o),n.dragHasStarted&&(m.$emit("calendar:dragend"),n.dragHasStarted=!1),t&&t.component&&_.forEach(t.component.blocks,function(e){e.dragging=!1})}function d(){}function n(e){this.setEventType(e)}function s(e){this.dragMode=e}h.on("mousedown",t),u.$on("$destroy",function(){h.off("mousedown",t),h.off("mousemove",o)}),d.prototype={x:-1,y:-1,getDelta:function(e){var t=new d;return t.x=this.x-e.x,t.y=this.y-e.y,y.$view&&(t.days=y.$view.dayNumbers[this.x]-y.$view.dayNumbers[e.x]),t},getDistance:function(e){var t=this.getDelta(e);return Math.sqrt(t.x*t.x+t.y*t.y)},clone:function(){var e=new d;return e.x=this.x,e.y=this.y,e}},n.prototype={dayNumber:-1,weekDay:-1,start:-1,duration:-1,eventType:null,setEventType:function(e){this.eventType=e},initFromBlock:function(e){var a=-1;"monthly"===this.eventType?(this.start=0,this.duration=e.component.blocks.length*c.EventDragDayLength):(this.start=e.component.blocks[0].start,this.duration=_.sumBy(e.component.blocks,function(e){var t,n;return n=e.dayNumber,t=a<0?0:n-a-1,a=n,e.length+t*c.EventDragDayLength}))},initFromCalendar:function(e){this.dayNumber=e},getDelta:function(e){var t=new n;return t.dayNumber=this.dayNumber-e.dayNumber,t.start=this.start-e.start,t.duration=this.duration-e.duration,t},_quartersToHM:function(e){var t=15*e,n=Math.floor(t/60);n<10&&(n="0"+n);var a=t%60;return a<10&&(a="0"+a),n+":"+a},getStartTime:function(){return this._quartersToHM(this.start)},getEndTime:function(){var e=(this.start+this.duration)%c.EventDragDayLength;return this._quartersToHM(e)},clone:function(){var e=new n;return e.dayNumber=this.dayNumber,e.start=this.start,e.duration=this.duration,e}},s.prototype={originalCoordinates:null,currentCoordinates:null,originalViewCoordinates:null,currentViewCoordinates:null,originalEventCoordinates:null,currentEventCoordinates:null,originalCalendar:null,dragHasStarted:!1,getEventViewCoordinates:null,initFromBlock:function(e){this.currentEventCoordinates=new n(this.eventType),this.originalEventCoordinates=new n(this.eventType),this.originalEventCoordinates.initFromBlock(e)},initFromEvent:function(e){this.currentCoordinates=new d,this.updateFromEvent(e),this.originalCoordinates=this.currentCoordinates.clone()},initFromCalendar:function(e){this.originalCalendar=e,this.currentEventCoordinates.initFromCalendar(e.index),this.originalEventCoordinates.initFromCalendar(e.index)},updateFromEvent:function(e){if(this.currentCoordinates.x=e.pageX,this.currentCoordinates.y=e.pageY,this.dragHasStarted&&y.$view){var t=this.getEventViewCoordinates(y.$view);this.originalViewCoordinates||(this.originalViewCoordinates=this.getEventViewCoordinates(y.$view,this.originalCoordinates),v.$ghost.component.isNew&&(this.setTimeFromQuarters(v.$ghost.component.start,this.originalViewCoordinates.y),f.debug("new event start date "+v.$ghost.component.start))),this.currentViewCoordinates&&t&&t.x==this.currentViewCoordinates.x&&t.y==this.currentViewCoordinates.y||(this.currentViewCoordinates=t,this.originalViewCoordinates&&(t||(this.currentViewCoordinates=this.originalViewCoordinates.clone()),this.updateEventCoordinates()))}else if(this.originalCoordinates&&this.currentCoordinates&&!this.dragHasStarted){var n=this.getDistance();3=c.EventDragDayLength&&(t=Math.floor(this.currentEventCoordinates.start/c.EventDragDayLength),this.currentEventCoordinates.start-=t*c.EventDragDayLength,this.currentEventCoordinates.dayNumber+=t),f.debug("event coordinates "+JSON.stringify(this.currentEventCoordinates)),m.$emit("calendar:drag")},getContainerBasedCoordinates:function(e,t){var n=t||this.currentCoordinates,a=n.getDelta(e.coordinates),i=e.element;return(a.xi.clientWidth||a.y<0||a.y>i.clientHeight)&&(a=null),a},prepareWithEventType:function(e){var t={multiday:this.getEventMultiDayViewCoordinates,"multiday-allday":this.getEventMultiDayAllDayViewCoordinates,monthly:this.getEventMonthlyViewCoordinates,unknown:null},n=t[e];this.eventType=e,this.getEventViewCoordinates=n},getEventMultiDayViewCoordinates:function(e,t){var n=this.getEventMultiDayAllDayViewCoordinates(e,t);if(n){var a=e.quarterHeight,i=this.getContainerBasedCoordinates(e,t);i.y+=e.element.scrollTop,n.y=Math.floor((i.y-c.EventDragHorizontalOffset)/a);var o=c.EventDragDayLength-1;n.y<0?n.y=0:n.y>o&&(n.y=o)}return n},getEventMultiDayAllDayViewCoordinates:function(e,t){var n,a=this.getContainerBasedCoordinates(e,t);if(a){n=new d;var i=e.dayWidth,o=e.daysOffset;n.x=Math.floor((a.x-o)/i);var r=0,s=y.$view.maxX;if("move-event"!=this.dragMode){var c=p.calendarData();c&&(r=s=c.index)}n.xs&&(n.x=s),n.y=0}else n=null;return n},getEventMonthlyViewCoordinates:function(e,t){var n,a=this.getContainerBasedCoordinates(e,t);if(a){n=new d;var i=e.maxX,o=e.dayWidth,r=e.daysOffset,s=e.dayHeight,c=Math.floor((a.y-0)/s);c<0&&(c=0),n.x=Math.floor((a.x-r)/o),n.x<0?n.x=0:n.x>i&&(n.x=i),n.x+=(i+1)*c,n.y=0}else n=null;return n},getDistance:function(){return this.currentCoordinates.getDistance(this.originalCoordinates)},setTimeFromQuarters:function(e,t){var n,a;n=Math.floor(t/4),a=t%4*15,e.setHours(n,a)}}}}}e.$inject=["$rootScope","$timeout","$log","Preferences","Calendar","CalendarSettings","Component"],angular.module("SOGo.SchedulerUI").directive("sgDraggableCalendarBlock",e)}(),function(){"use strict";function e(c,l,d){var u,h=this,p=l.controller("sgCalendarScrollView");c.nowDay=null,c.lineElement=null,c.updateLine=function(e){var t=new Date,n=t.getDayString(),a=t.getHours(),i=4*c.quarterHeight,o=t.getMinutes(),r=c.quarterHeight/15,s=parseInt(a*i+o*r-1);(e||n!=c.nowDay)&&(c.lineElement&&c.lineElement.remove(),c.lineElement=function(t,e){var n=angular.element("");p.isMultiColumn?e&&e[0].attributes["sg-day"].value==t&&l.append(n):_.forEach(e,function(e){e.attributes["sg-day"].value==t&&angular.element(e).find("div").eq(0).append(n)});return n}(n,c.days),c.nowDay=n);c.lineElement&&(c.lineElement.css("top",s+"px"),u=d(angular.bind(h,c.updateLine),6e4))},c.$on("$destroy",function(){u&&d.cancel(u)})}e.$inject=["$scope","$element","$timeout"],angular.module("SOGo.SchedulerUI").directive("sgNowLine",function(){return{restrict:"C",require:"^^sgCalendarScrollView",link:function(n,e,t,a){function i(){return e.find("sg-calendar-day")}var o=n.$watch(function(){return a.quarterHeight},function(e){if(e){o(),n.quarterHeight=e;var t=n.$watch(i,function(e){e.length&&(t(),n.days=e,n.updateLine())})}})},controller:e}})}(); +!function(){"use strict";function c(e){if(this.init(e),this.name&&!this.id){var t=c.$$resource.create("createFolder",this.name);this.$unwrap(t)}}c.$factory=["$q","$timeout","$log","sgSettings","Resource","Preferences","Component","Acl",function(e,t,n,i,a,o,r,s){return angular.extend(c,{$q:e,$timeout:t,$log:n,$$resource:new a(i.activeUser("folderURL")+"Calendar",i.activeUser()),$Preferences:o,$Component:r,$$Acl:s,activeUser:i.activeUser(),$view:null}),c}];try{angular.module("SOGo.SchedulerUI")}catch(e){angular.module("SOGo.SchedulerUI",["SOGo.Common"])}angular.module("SOGo.SchedulerUI").value("CalendarSettings",{EventDragDayLength:96,EventDragHorizontalOffset:3,ConflictHTTPErrorCode:409}).factory("Calendar",c.$factory),c.$defaultCalendar=function(){var e;return"first"==c.$Preferences.defaults.SOGoDefaultCalendar&&(e=_.find(c.$findAll(null,!0),function(e){return e.active}))?e.id:"personal"},c.$add=function(n){var e,t;e=n.isWebCalendar?this.$webcalendars:n.isSubscription?this.$subscriptions:this.$calendars,(t=_.findIndex(e,function(e,t){return"personal"==n.id||"personal"!=e.id&&0e&&this.attachUrls.splice(e,1)},h.prototype.$addDueDate=function(){this.due=new Date,this.due.setMinutes(15*Math.round(this.due.getMinutes()/15)),this.dueDate=this.due.toISOString()},h.prototype.$deleteDueDate=function(){delete this.due,delete this.dueDate},h.prototype.$addStartDate=function(){this.start=new Date,this.start.setMinutes(15*Math.round(this.start.getMinutes()/15))},h.prototype.$deleteStartDate=function(){delete this.start,delete this.startDate},h.prototype.$addRecurrenceDate=function(){var e=new Date;e.setMinutes(15*Math.round(e.getMinutes()/15)),angular.isUndefined(this.repeat.dates)&&(this.repeat={frequency:"custom",dates:[]}),this.repeat.dates.push(e)},h.prototype.$deleteRecurrenceDate=function(e){-1e&&this.repeat.dates.splice(e,1)},h.prototype.$reset=function(){var n=this;angular.forEach(this,function(e,t){"constructor"!=t&&"$"!=t[0]&&delete n[t]}),this.init(this.$shadowData),this.$shadowData=this.$omit()},h.prototype.$reply=function(){var e,t=this,n=[this.pid,encodeURIComponent(this.id)];return this.occurrenceId&&n.push(this.occurrenceId),e={reply:this.reply,delegatedTo:this.delegatedTo,alarm:this.$hasAlarm?this.alarm:{}},h.$$resource.save(n.join("/"),e,{action:"rsvpAppointment"}).then(function(e){return t.$shadowData=t.$omit(),e})},h.prototype.$adjust=function(e){var t=[this.pid,encodeURIComponent(this.id)];return _.every(_.values(e),function(e){return 0===e})?h.$q.when():(this.occurrenceId&&t.push(this.occurrenceId),h.$log.debug("adjust "+t.join("/")+" "+JSON.stringify(e)),h.$$resource.save(t.join("/"),e,{action:"adjust"}))},h.prototype.$save=function(e){var t,n,i,a,o=this;return i=this.$omit(),a=h.$Preferences.$mdDateLocaleProvider,i.startDate=i.start?i.start.format(a,"%Y-%m-%d"):"",i.startTime=i.start?i.start.format(a,"%H:%M"):"",i.endDate=i.end?i.end.format(a,"%Y-%m-%d"):"",i.endTime=i.end?i.end.format(a,"%H:%M"):"",i.dueDate=i.due?i.due.format(a,"%Y-%m-%d"):"",i.dueTime=i.due?i.due.format(a,"%H:%M"):"",i.completedDate=i.completed?i.completed.format(a,"%Y-%m-%d"):"",this.hasCustomRepeat()?"monthly"==this.repeat.frequency&&this.repeat.month.type&&"byday"==this.repeat.month.type&&"relative"!=this.repeat.month.day||"yearly"==this.repeat.frequency&&this.repeat.year.byday?(delete i.repeat.monthdays,i.repeat.days=[{day:this.repeat.month.day,occurrence:this.repeat.month.occurrence.toString()}]):"monthly"!=this.repeat.frequency&&"yearly"!=this.repeat.frequency||!this.repeat.month.type?"custom"==this.repeat.frequency&&this.repeat.dates&&_.forEach(i.repeat.dates,function(e,t,n){n[t]={date:e.format(a,"%Y-%m-%d"),time:e.format(a,"%H:%M")}}):(delete i.repeat.days,"relative"==this.repeat.month.day&&(i.repeat.monthdays=[this.repeat.month.occurrence])):this.repeat.frequency&&"never"!=this.repeat.frequency&&(i.repeat={frequency:this.repeat.frequency}),i.startDate&&this.repeat.frequency&&"never"!=this.repeat.frequency?"until"==this.repeat.end&&this.repeat.until?i.repeat.until=this.repeat.until.stringWithSeparator("-"):"count"==this.repeat.end&&this.repeat.count?i.repeat.count=this.repeat.count:(delete i.repeat.until,delete i.repeat.count):delete i.repeat,"not-specified"==this.status?delete i.status:"completed"!=this.status&&delete i.completedDate,(i.startDate||i.dueDate)&&this.$hasAlarm?!this.alarm.action||"email"!=this.alarm.action||this.attendees&&0',' ',"

"+l("editRepeatingItem")+"

","
"," ",' '+l("button_thisOccurrenceOnly")+"",' '+l("button_allOccurrences")+""," ",""].join(""),controller:c}).then(function(){h.$emit("calendars:list")},function(){}).finally(function(){p(function(){y.$resetGhost()})})),c.$inject=["$scope","$mdDialog","component","params"],u.$inject=["$scope","$mdDialog","component","params","conflictError"]}c={title:"Title",location:"Location",calendarName:"Calendar",start:"Start",priority:"Priority",category:"Category",status:"Status",events:{end:"End"},tasks:{end:"Due Date"}},d.component=y,d.componentType="events",d.selectedList=0,d.selectComponentType=$,d.unselectComponents=function(){_.forEach(y["$"+d.componentType],function(e){e.selected=!1}),d.mode.multiple=0},d.selectAll=function(){_.forEach(y["$"+d.componentType],function(e){e.selected=!0}),d.mode.multiple=y["$"+d.componentType].length},d.searchMode=C,d.toggleComponentSelection=function(e,t){t.selected=!t.selected,d.mode.multiple+=t.selected?1:-1,e.preventDefault(),e.stopPropagation()},d.confirmDeleteSelectedComponents=function(){o.confirm(l("Warning"),l("Are you sure you want to delete the selected components?"),{ok:l("Delete")}).then(function(){var e=_.filter(y["$"+d.componentType],function(e){return e.selected});g.$deleteComponents(e).then(function(){d.mode.multiple=0,h.$emit("calendars:list")})})},d.openEvent=function(e,t){b(e,t,"appointment")},d.openTask=function(e,t){b(e,t,"task")},d.newComponent=D,d.filter=function(e){{if(!e)return y["$query"+d.componentType.capitalize()].filterpopup;y.$filter(d.componentType,{filterpopup:e})}},d.filteredBy=function(e){return y["$query"+d.componentType.capitalize()].filterpopup==e},d.sort=function(e){{if(!e){var t=y["$query"+d.componentType.capitalize()].sort;return c[t]||c[d.componentType][t]}y.$filter(d.componentType,{sort:e})}},d.sortedBy=function(e){return y["$query"+d.componentType.capitalize()].sort==e},d.reload=function(){y.$loaded=y.STATUS.LOADING,g.reloadWebCalendars().finally(function(){h.$emit("calendars:list")})},d.cancelSearch=function(){d.mode.search=!1,y.$filter(d.componentType,{value:""})},d.mode={search:!1,multiple:0},this.$onInit=function(){var e;(e=u).push(n.createHotkey({key:l("hotkey_search"),description:l("Search"),callback:C})),e.push(n.createHotkey({key:l("hotkey_create_event"),description:l("Create a new event"),callback:D,args:"appointment"})),e.push(n.createHotkey({key:l("hotkey_create_task"),description:l("Create a new task"),callback:D,args:"task"})),_.forEach(e,function(e){n.registerHotkey(e)}),s="events","tasksListView"==r.settings.Calendar.SelectedList&&(d.selectedList=1,s="tasks"),$(s,{reload:!0}),h.$on("calendars:list",function(){y.$filter(d.componentType,{reload:!0})}),h.$on("calendar:dragend",k),t.$on("$destroy",function(){_.forEach(u,function(e){n.deregisterHotkey(e)})})},this.ascending=function(){return y["$query"+d.componentType.capitalize()].asc}}e.$inject=["$rootScope","$scope","$q","$timeout","$state","$mdDialog","sgHotkeys","sgFocus","Dialog","Preferences","CalendarSettings","Calendar","Component","Alarm"],angular.module("SOGo.SchedulerUI").controller("CalendarListController",e)}(),function(){"use strict";function e(o,e,t,i,r,n,a,s,c,d){var u=this;u.activeUser=s.activeUser,u.service=d,u.newCalendar=function(e){a.prompt(l("New calendar"),l("Name of the Calendar")).then(function(e){var t=new d({name:e,isEditable:!0,isRemote:!1,owner:UserLogin});t.$id().then(function(){d.$add(t)}).catch(_.noop)})},u.addWebCalendar=function(){function n(e,n,t,i){var a=this,o=t.split("/"),r=o[2];a.title=l("Please identify yourself to %{0}").formatted(r),a.url=t,a.authenticate=function(t){!t.$valid&&t.$error.required||i.setCredentials(a.username,a.password).then(function(e){n.hide()},function(e){t.password.$setValidity("credentials",!1)})},a.cancel=function(){n.cancel()}}a.prompt(l("Subscribe to a web calendar..."),l("URL of the Calendar"),{inputType:"url"}).then(function(t){d.$addWebCalendar(t).then(function(e){angular.isObject(e)&&i.show({parent:angular.element(document.body),clickOutsideToClose:!0,escapeToClose:!0,templateUrl:"UIxWebCalendarAuthDialog",controller:n,controllerAs:"$WebCalendarAuthDialogController",locals:{url:t,calendar:e}})})}),n.$inject=["scope","$mdDialog","url","calendar"]},u.subscribeToFolder=function(e){r.debug("subscribeToFolder "+e.owner+e.name),d.$subscribe(e.owner,e.name).then(function(e){n.show(n.simple().content(l("Successfully subscribed to calendar")).position("top right").hideDelay(3e3))})},u.filter={name:""},u.sortableMode=!1,u.toggleSortableMode=function(){u.sortableMode=!u.sortableMode,u.filter.name=""},u.resetSort=function(){d.saveFoldersOrder()},u.sortableCalendars={scrollableContainer:"#sidenav-content",containment:"md-list",orderChanged:function(){d.saveFoldersOrder(_.flatMap(d.$findAll(),"id"))},accept:function(e,t,n){return e.sortableScope.element[0]==t.element[0]}},this.$onInit=function(){u.categories=_.map(c.defaults.SOGoCalendarCategories,function(e){return{id:e.asCSSIdentifier(),name:e,color:c.defaults.SOGoCalendarCategoriesColors[e]}}),e.$watch(function(){return _.union(_.map(d.$calendars,function(e){return _.pick(e,["id","active","color"])}),_.map(d.$subscriptions,function(e){return _.pick(e,["id","active","color"])}),_.map(d.$webcalendars,function(e){return _.pick(e,["id","active","color"])}))},function(e,n){var t,i,a;t=_.intersectionBy(e,n,"id"),i=_.map(_.filter(t,function(e){var t=_.find(n,{id:e.id});return!_.isEqual(e,t)}),"id"),a=d.$q.when(),0"}))},this.newMessageWithRecipient=function(e,t,n){h(e,[t+" <"+n+">"])},this.edit=function(){var t="vevent"==this.component.component?"Appointment":"Task";r.hide().then(function(){var e="UIx"+t+"EditorTemplate";r.show({parent:angular.element(document.body),clickOutsideToClose:!0,escapeToClose:!0,templateUrl:e,controller:"ComponentEditorController",controllerAs:"editor",locals:{stateComponent:u.component}})})},this.editAllOccurrences=function(){(d=e.$get(this.component.pid).$getComponent(this.component.id)).$futureComponentData.then(function(){u.component=d,u.edit()})},this.reply=function(e){(e||this.component).$reply().then(function(){t.$emit("calendars:list"),a.getAlarms(),r.hide()})},this.replyAllOccurrences=function(){(d=e.$get(this.component.pid).$getComponent(this.component.id)).$futureComponentData.then(function(){d.reply=u.component.reply,d.delegatedTo=u.component.delegatedTo,d.$hasAlarm=u.component.$hasAlarm,d.alarm=u.component.alarm,u.reply(d)})},this.deleteOccurrence=function(){this.component.remove(!0).then(function(){t.$emit("calendars:list"),r.hide()})},this.deleteAllOccurrences=function(){this.component.remove().then(function(){t.$emit("calendars:list"),r.hide()})},this.toggleRawSource=function(n){e.$$resource.post(this.component.pid+"/"+this.component.id,"raw").then(function(e){function t(e,t,n){e.data=n,e.close=function(){t.hide()}}r.hide(),r.show({parent:angular.element(document.body),targetEvent:n,clickOutsideToClose:!0,escapeToClose:!0,template:['',' ','
',"  
"," ",' '+l("Close")+""," ","
"].join(""),controller:t,locals:{data:e}}),t.$inject=["scope","$mdDialog","data"]})},this.copySelectedComponent=function(e){this.component.copyTo(e).then(function(){r.hide(),t.$emit("calendars:list")})},this.moveSelectedComponent=function(e){this.component.moveTo(e).then(function(){r.hide(),t.$emit("calendars:list")})}}function t(t,e,n,i,a,o,r,s,d,c,u,h,p,m){var f,g,y=this;function v(){var e=[];return y.component.start&&y.component.end&&(e=y.component.start.daysUpTo(y.component.end)),_.map(e,function(e){return{stringWithSeparator:e.stringWithSeparator(),getDayString:e.getDayString()}})}function $(){y.attendeesEditor.days=v(),y.component.updateFreeBusy()}this.$onInit=function(){this.service=d,this.component=m,this.categories={},this.showRecurrenceEditor=this.component.$hasCustomRepeat,this.showAttendeesEditor=this.component.attendees&&this.component.attendees.length,this.attendeeConflictError=!1,this.attendeesEditor={days:v(),hours:function(){for(var e=[],t=0;t<=23;t++)e.push(t.toString());return e}()},this.component.start&&(f=new Date(this.component.start.getTime())),this.component.end&&(g=new Date(this.component.end.getTime())),this.component.due&&new Date(this.component.due.getTime())},this.addAttachUrl=function(){var e=this.component.addAttachUrl("");o("attachUrl_"+e)},this.toggleRecurrenceEditor=function(){this.showRecurrenceEditor=!this.showRecurrenceEditor,this.component.$hasCustomRepeat=this.showRecurrenceEditor},this.toggleAttendeesEditor=function(){this.showAttendeesEditor=!this.showAttendeesEditor},this.recurrenceMonthDaysAreRequired=function(){return this.component&&"monthly"==this.component.repeat.frequency&&"bymonthday"==this.component.repeat.month.type},this.changeFrequency=function(){"custom"==this.component.repeat.frequency&&(this.showRecurrenceEditor=!0)},this.changeCalendar=function(){this.component.attendees&&0? *"),"");return y.showAttendeesEditor|=a,y.searchText="",new h({c_cn:_.trim(n,' "'),emails:[{value:t}]})}if(t&&(r.partial=t),angular.isString(e)){for(i="",n=0;n",'
','
",'
',' {{'+n+"block.component.c_priority}}"," {{ "+n+"block.component.summary }}",' ',' ',' ',' ',' '," ",'
',' place ',"
","
","
",'
{{ block.startHour }}
','
{{ block.endHour }}
',""].join("")},link:function(e,t,n){var i,a,o;_.has(n,"sgCalendarGhost")||(i=100/e.block.siblings,a=e.block.position*i,0===(o=100-(e.block.position+1)*i)&&(o=10),t.css("left",a+"%"),t.css("right",o+"%"),e.block.component&&e.block.component.c_isallday||(t.addClass("starts"+e.block.start),t.addClass("lasts"+e.block.length)),e.block.userState&&t.addClass("sg-event--"+e.block.userState),e.block.component&&(t.addClass("bg-folder"+e.block.component.pid),t.addClass("contrast-bdr-folder"+e.block.component.pid),0===e.block.component.c_isopaque&&t.addClass("sg-event--transparent"),0===e.block.component.c_status&&t.addClass("sg-event--cancelled")))}}}e.$inject=["CalendarSettings"],angular.module("SOGo.SchedulerUI").directive("sgCalendarDayBlock",e)}(),function(){"use strict";angular.module("SOGo.SchedulerUI").directive("sgCalendarDayTable",function(){return{restrict:"E",scope:{blocks:"=sgBlocks",day:"@sgDay",clickBlock:"&sgClick"},template:["'].join("")}})}(),function(){"use strict";function e(r,e,f,g,s){return{restrict:"A",require:["^sgCalendarDay","^sgCalendarScrollView"],link:function(c,l,e,t){var n,d,u,h,p;n=l[0],d=t[0],u=t[1],h=-1,l.addClass("sg-event--ghost md-whiteframe-3dp ng-hide");var i=r.$on("calendar:dragstart",function(){var e,t,n;c.block=s.$ghost,(t=d.calendarData())&&(h=t.index,e=t.pid,p=c.block.pointerHandler.originalCalendar.index);e||(e=c.block.component.pid);(n=c.block.component.blocks[0].userState)&&l.addClass("sg-event--"+n);l.addClass("bg-folder"+e)}),a=r.$on("calendar:drag",function(){var e,t,n,i,a,o,r,s;if(e=!1,g.$view&&g.$view.type==u.type){if(t="multiday-allday"===u.type,n=c.block.component.c_isallday,i=c.block.pointerHandler.currentEventCoordinates.dayNumber,a=c.block.pointerHandler.currentEventCoordinates.start,r=c.block.pointerHandler.currentEventCoordinates.duration,s=f.EventDragDayLength-a,angular.isUndefined(r))return;for(s<(o=r)&&(o=s),-1f.EventDragDayLength&&(o=f.EventDragDayLength),-1','
",' '," {{ ::component.c_title }}",' ',' ',' ',' ',' '," ",'
',' access_time ',"
",'
',' place ',"
",""].join("")},link:function(e,t,n){e.component.viewable&&t.addClass("md-clickable");e.component.userstate&&t.addClass("sg-event--"+e.component.userstate);t.addClass("bg-folder"+e.component.pid),t.addClass("contrast-bdr-folder"+e.component.pid),0===e.component.c_isopaque&&t.addClass("sg-event--transparent");0===e.component.c_status&&t.addClass("sg-event--cancelled")}}}e.$inject=["CalendarSettings"],angular.module("SOGo.SchedulerUI").directive("sgCalendarListEvent",e)}(),function(){function e(r,e,t,n,s,a,i,o,c,d,u){var h=this;this.$onInit=function(){this.editMode=!1},this.$postLink=function(){this.clickableElement=t.find("p")[0],this.nameElements=this.clickableElement.getElementsByClassName("sg-calendar-name"),this.inputContainer=t.find("md-input-container")[0],this.inputElement=t.find("input")[0],this.moreOptionsButton=_.last(t.find("md-icon")),this.updateCalendarName()},this.updateCalendarName=function(){_.forEach(this.nameElements,function(e){e.innerHTML=h.calendar.name})},this.editFolder=function(e){e.stopPropagation(),e.preventDefault(),this.editMode=!0,this.inputElement.value=this.calendar.name,this.clickableElement.classList.add("ng-hide"),this.inputContainer.classList.remove("ng-hide"),e.srcEvent&&"touchend"==e.srcEvent.type?n(function(){h.inputElement.focus(),h.inputElement.select()},200):(this.inputElement.select(),this.inputElement.focus()),this.panel&&this.panel.close()},this.saveFolder=function(e){this.inputElement.disabled||(this.calendar.name=this.inputElement.value,this.inputElement.disabled=!0,this.calendar.$rename().then(function(e){h.editMode=!1,h.inputContainer.classList.add("ng-hide"),h.clickableElement.classList.remove("ng-hide"),h.updateCalendarName()},function(){h.editMode=!0,h.inputElement.value=h.calendar.name,n(function(){h.inputElement.focus(),h.inputElement.select()},200)}).finally(function(){h.inputElement.disabled=!1}))},this.revertEditing=function(){this.editMode=!1,this.clickableElement.classList.remove("ng-hide"),this.inputContainer.classList.add("ng-hide"),this.inputElement.value=this.calendar.name},this.confirmDelete=function(){this.calendar.isSubscription?this.calendar.$delete().catch(function(e,t){d.alert(l('An error occured while deleting the calendar "%{0}".',h.calendar.name),l(e.error))}):d.confirm(l("Warning"),l('Are you sure you want to delete the calendar "%{0}"?',this.calendar.name),{ok:l("Delete")}).then(function(){h.calendar.$delete().catch(function(e,t){d.alert(l('An error occured while deleting the calendar "%{0}".',h.calendar.name),l(e.error))})})},this.showMenu=function(o){var e=a.newPanelPosition().relativeTo(this.moreOptionsButton).addPanelPosition(a.xPosition.ALIGN_START,a.yPosition.ALIGN_TOPS),t=a.newPanelAnimation().openFrom(this.moreOptionsButton).duration(100).withAnimation(a.animation.FADE),n={attachTo:angular.element(document.body),locals:{itemCtrl:this,calendar:this.calendar,editFolder:angular.bind(this,this.editFolder),confirmDelete:angular.bind(this,this.confirmDelete)},bindToController:!0,controller:i,controllerAs:"$menuCtrl",position:e,animation:t,targetEvent:o,templateUrl:"UIxCalendarMenu",trapFocus:!0,clickOutsideToClose:!0,escapeToClose:!0,focusOnOpen:!0};function i(e,n,i,t){var a=this;this.showOnly=function(){_.forEach(u.$findAll(),function(e){a.calendar.id==e.id?e.active=1:e.active=0})},this.showAll=function(){_.forEach(u.$findAll(),function(e){e.active=1})},this.showProperties=function(){var e=this.calendar.color;function t(e,t,n){var i=this;i.calendar=new u(n.$omit()),i.saveProperties=function(e){e.$valid&&i.calendar.$save().then(function(){n.init(i.calendar.$omit()),t.hide()},function(){e.$setPristine()})},i.close=function(){t.cancel()},e.$watch(function(){return i.calendar.color},function(){n.color=i.calendar.color})}n.show({templateUrl:this.calendar.id+"/properties",controller:t,controllerAs:"properties",clickOutsideToClose:!0,escapeToClose:!0,locals:{srcCalendar:this.calendar}}).catch(function(){a.calendar.color=e}),t.$inject=["$scope","$mdDialog","srcCalendar"]},this.showLinks=function(){function e(e,t){this.calendar=t,this.close=function(){e.hide()}}n.show({parent:angular.element(document.body),clickOutsideToClose:!0,escapeToClose:!0,templateUrl:this.calendar.id+"/links",controller:e,controllerAs:"links",locals:{calendar:this.calendar}}),e.$inject=["$mdDialog","calendar"]},this.importCalendar=function(){function e(e,o,t){function n(e){var t=0===e.type.indexOf("text")||/\.(ics)$/.test(e.name);return t||s.show({template:["",'
',' error_outline'," "+l("Select an iCalendar file (.ics).")+"","
","
"].join(""),position:"top right",hideDelay:3e3}),t}this.uploader=new i({url:ApplicationBaseURL+[t.id,"import"].join("/"),autoUpload:!0,queueLimit:1,filters:[{name:n,fn:n}],onSuccessItem:function(e,t,n,i){var a;o.hide(),0===t.imported?a=l("No event was imported."):(a=l("A total of %{0} events were imported in the calendar.",t.imported),r.$emit("calendars:list")),s.show(s.simple().content(a).position("top right").hideDelay(3e3))},onErrorItem:function(e,t,n,i){s.show({template:["",'
',' error_outline'," "+l("An error occurred while importing calendar.")+"","
","
"].join(""),position:"top right",hideDelay:3e3})}}),this.close=function(){o.hide()}}n.show({parent:angular.element(document.body),targetEvent:o,clickOutsideToClose:!0,escapeToClose:!0,templateUrl:"UIxCalendarImportDialog",controller:e,controllerAs:"$CalendarImportDialogController",locals:{folder:this.calendar}}),e.$inject=["scope","$mdDialog","folder"]},this.share=function(){this.calendar.$acl.$users().then(function(){n.show({templateUrl:a.calendar.id+"/UIxAclEditor",controller:"AclController",controllerAs:"acl",clickOutsideToClose:!0,escapeToClose:!0,locals:{usersWithACL:a.calendar.$acl.users,User:t,folder:a.calendar}})})}}a.open(n).then(function(e){(h.panel=e).panelEl.one("click",function(){e.close()})}),i.$inject=["mdPanelRef","$mdDialog","FileUploader","User"]}}e.$inject=["$rootScope","$scope","$element","$timeout","$mdToast","$mdPanel","$mdMedia","$mdSidenav","sgConstant","Dialog","Calendar"],angular.module("SOGo.SchedulerUI").controller("sgCalendarListItemController",e).directive("sgCalendarListItem",function(){return{restrict:"C",scope:{},bindToController:{calendar:"=sgCalendar"},template:['','

',' ',' error',' ',' ',"

",'',' ',"",''," drag_handle","",'more_vert'].join(""),controller:"sgCalendarListItemController",controllerAs:"$ctrl"}})}(),function(){"use strict";angular.module("SOGo.SchedulerUI").directive("sgCalendarMonthDay",function(){return{restrict:"E",scope:{blocks:"=sgBlocks",day:"@sgDay",clickBlock:"&sgClick"},template:["'].join("")}})}(),function(){"use strict";angular.module("SOGo.SchedulerUI").directive("sgCalendarMonthEvent",function(){return{restrict:"E",scope:{block:"=sgBlock",clickBlock:"&sgClick"},replace:!0,template:function(e,t){var n=_.has(t,"sgCalendarGhost")?"":"::";return['
','
",' {{ '+n+"block.component.startHour }}",' {{'+n+"block.component.c_priority}}"," {{ "+n+"block.component.summary }}",' ',' ',' ',' ',' '," ","
"].join("")},link:function(e,t,n){_.has(n,"sgCalendarGhost")||(e.block.userState&&t.addClass("sg-event--"+e.block.userState),e.block.component&&(t.addClass("bg-folder"+e.block.component.pid),0===e.block.component.c_isopaque&&t.addClass("sg-event--transparent"),0===e.block.component.c_status&&t.addClass("sg-event--cancelled")))}}})}(),function(){"use strict";function e(c,l,e,t,d,n,u,h,p){return{restrict:"A",scope:{type:"@sgCalendarScrollView"},controller:i,link:function(e,i,t,a){var o,r,n;function s(e,t){this.$element=e,this.element=e[0],this.type=t,this.quarterHeight=this.getQuarterHeight(),this.scrollStep=6*this.quarterHeight,this.dayNumbers=this.getDayNumbers(),this.maxX=this.getMaxColumns(),this.deregisterDragStart=c.$on("calendar:dragstart",angular.bind(this,this.onDragStart)),this.deregisterDragStop=c.$on("calendar:dragend",angular.bind(this,this.onDragEnd)),this.bindedUpdateCoordinates=angular.bind(this,this.updateCoordinates),this.bindedUpdateFromPointerHandler=angular.bind(this,this.updateFromPointerHandler),this.updateCoordinates(),angular.element(l).on("resize",this.bindedUpdateCoordinates)}o=null,r=e.type,n="multicolumndayview"==i.attr("sg-view"),a.isMultiColumn=n,d(function(){var e,t,n;o=new s(i,r),"monthly"!=r&&p.defaults.SOGoDayStartTime&&(e=p.defaults.SOGoDayStartTime.split(":"),t=document.getElementById("hour"+parseInt(e[0])),n=parseInt(e[1])*o.quarterHeight,o.element.scrollTop=t.offsetTop+n);a.quarterHeight=o.quarterHeight}),e.$on("$destroy",function(){o&&o.$destroy()}),s.prototype={$destroy:function(){this.deregisterDragStart(),this.deregisterDragStop(),this.$element.off("mousemove",this.bindedUpdateFromPointerHandler),angular.element(l).off("resize",this.bindedUpdateCoordinates)},onDragStart:function(){this.$element.on("mousemove",this.bindedUpdateFromPointerHandler),this.updateCoordinates(),this.updateFromPointerHandler()},onDragEnd:function(){this.$element.off("mousemove",this.bindedUpdateFromPointerHandler),u.$view=null},getQuarterHeight:function(){var e,t,n=null;return e=document.getElementById("hour0"),t=document.getElementById("hour23"),e&&t&&(n=(t.offsetTop-e.offsetTop)/92),n},getDayDimensions:function(e){var t,n,i,a,o,r,s;return n=t=i=a=0,0<(o=this.element.getElementsByClassName("day")).length&&(n=(r=o[0].getBoundingClientRect()).height,t=r.width,i=r.left-e,0<(s=o[0].getElementsByClassName("sg-calendar-tile-header")).length&&(a=s[0].clientHeight)),{height:n,width:t,offset:{left:i,top:a}}},getDayNumbers:function(){var e;return e=this.element.getElementsByTagName("sg-calendar-day"),_.map(e,function(e,t){return n?t:parseInt(e.attributes["sg-day-number"].value)})},getMaxColumns:function(){var e,t=0;return"monthly"==this.type?(e=this.element.getElementsByTagName("md-grid-list")[0],t=parseInt(e.attributes["md-cols"].value)-1):t=this.element.getElementsByClassName("day").length-1,t},updateCoordinates:function(){var e,t;e=this.element.getBoundingClientRect(),t=this.getDayDimensions(e.left),angular.extend(this,{coordinates:{x:e.left,y:e.top},dayHeight:t.height,dayWidth:t.width,daysOffset:t.offset.left,topOffset:t.offset.top})},updateFromPointerHandler:function(){var e,t,n,i,a,o;e=h.$ghost.pointerHandler,this.coordinates&&e&&(t=e.getContainerBasedCoordinates(this))&&(u.$view=this,n=(new Date).getTime(),(!this.lastScroll||n>this.lastScroll+100)&&(this.lastScroll=n,(i=t.y-this.scrollStep)<0?(i<(a=-this.element.scrollTop)&&(i=a),this.element.scrollTop+=i):0<(o=(i=t.y+this.scrollStep)-this.element.clientHeight)&&(this.element.scrollTop+=o)))}}}}}function i(e){this.type=e.type}e.$inject=["$rootScope","$window","$document","$q","$timeout","$mdGesture","Calendar","Component","Preferences"],i.$inject=["$scope"],angular.module("SOGo.SchedulerUI").directive("sgCalendarScrollView",e)}(),function(){"use strict";angular.module("SOGo.SchedulerUI").directive("sgCategoryStylesheet",function(){return{restrict:"E",require:"ngModel",scope:{ngModel:"="},replace:!0,template:['"].join("")}})}(),function(){"use strict";function e(m,i,f,g,y,c,v){return{restrict:"CA",require:"^sgCalendarDay",link:function(u,h,e,p){if(u.block){if(!u.block.component.editable||u.block.userState)return void h.removeClass("sg-draggable-calendar-block");!function(){var e,t,n,i,a,o,r,s,c,l;if(u.block.length<3)return;e=u.block.component,t=u.block.dayIndex,n=_.findIndex(e.blocks,["dayIndex",t]),i=0===n,a=n===e.blocks.length-1,(o=angular.element('
')).addClass("bdr-folder"+e.pid),e.c_isallday||"SG-CALENDAR-MONTH-DAY"===h[0].parentNode.tagName?(i&&(r=angular.element('
').append(o),h.append(r)),a&&(s=angular.element('
').append(o.clone()),h.append(s))):(i&&(c=angular.element('
').append(o),h.append(c)),a&&(l=angular.element('
').append(o.clone()),h.append(l)))}()}function t(e){var t,n,i,a;e.stopPropagation(),e.target.scrollHeight>e.target.clientHeight+1&&(i=e.target.getBoundingClientRect(),a=i.left+i.width-18,e.pageX>a)||(t="move-event",u.block&&u.block.component?"dragGrip-top"==e.target.className||"dragGrip-left"==e.target.className?t="change-start":"dragGrip-bottom"!=e.target.className&&"dragGrip-right"!=e.target.className||(t="change-end"):t="change-end",(n=new s(t)).initFromEvent(e),v.$ghost.pointerHandler=n,angular.element(document).one("mouseup",r),angular.element(document).on("mousemove",o))}function o(e){var t=v.$ghost.pointerHandler;i(function(){t.updateFromEvent(e)})}function r(e){var t,n;t=u.block,n=v.$ghost.pointerHandler,angular.element(document).off("mousemove",o),n.dragHasStarted&&(m.$emit("calendar:dragend"),n.dragHasStarted=!1),t&&t.component&&_.forEach(t.component.blocks,function(e){e.dragging=!1})}function d(){}function n(e){this.setEventType(e)}function s(e){this.dragMode=e}h.on("mousedown",t),u.$on("$destroy",function(){h.off("mousedown",t),h.off("mousemove",o)}),d.prototype={x:-1,y:-1,getDelta:function(e){var t=new d;return t.x=this.x-e.x,t.y=this.y-e.y,y.$view&&(t.days=y.$view.dayNumbers[this.x]-y.$view.dayNumbers[e.x]),t},getDistance:function(e){var t=this.getDelta(e);return Math.sqrt(t.x*t.x+t.y*t.y)},clone:function(){var e=new d;return e.x=this.x,e.y=this.y,e}},n.prototype={dayNumber:-1,weekDay:-1,start:-1,duration:-1,eventType:null,setEventType:function(e){this.eventType=e},initFromBlock:function(e){var i=-1;"monthly"===this.eventType?(this.start=0,this.duration=e.component.blocks.length*c.EventDragDayLength):(this.start=e.component.blocks[0].start,this.duration=_.sumBy(e.component.blocks,function(e){var t,n;return n=e.dayNumber,t=i<0?0:n-i-1,i=n,e.length+t*c.EventDragDayLength}))},initFromCalendar:function(e){this.dayNumber=e},getDelta:function(e){var t=new n;return t.dayNumber=this.dayNumber-e.dayNumber,t.start=this.start-e.start,t.duration=this.duration-e.duration,t},_quartersToHM:function(e){var t=15*e,n=Math.floor(t/60);n<10&&(n="0"+n);var i=t%60;return i<10&&(i="0"+i),n+":"+i},getStartTime:function(){return this._quartersToHM(this.start)},getEndTime:function(){var e=(this.start+this.duration)%c.EventDragDayLength;return this._quartersToHM(e)},clone:function(){var e=new n;return e.dayNumber=this.dayNumber,e.start=this.start,e.duration=this.duration,e}},s.prototype={originalCoordinates:null,currentCoordinates:null,originalViewCoordinates:null,currentViewCoordinates:null,originalEventCoordinates:null,currentEventCoordinates:null,originalCalendar:null,dragHasStarted:!1,getEventViewCoordinates:null,initFromBlock:function(e){this.currentEventCoordinates=new n(this.eventType),this.originalEventCoordinates=new n(this.eventType),this.originalEventCoordinates.initFromBlock(e)},initFromEvent:function(e){this.currentCoordinates=new d,this.updateFromEvent(e),this.originalCoordinates=this.currentCoordinates.clone()},initFromCalendar:function(e){this.originalCalendar=e,this.currentEventCoordinates.initFromCalendar(e.index),this.originalEventCoordinates.initFromCalendar(e.index)},updateFromEvent:function(e){if(this.currentCoordinates.x=e.pageX,this.currentCoordinates.y=e.pageY,this.dragHasStarted&&y.$view){var t=this.getEventViewCoordinates(y.$view);this.originalViewCoordinates||(this.originalViewCoordinates=this.getEventViewCoordinates(y.$view,this.originalCoordinates),v.$ghost.component.isNew&&(this.setTimeFromQuarters(v.$ghost.component.start,this.originalViewCoordinates.y),f.debug("new event start date "+v.$ghost.component.start))),this.currentViewCoordinates&&t&&t.x==this.currentViewCoordinates.x&&t.y==this.currentViewCoordinates.y||(this.currentViewCoordinates=t,this.originalViewCoordinates&&(t||(this.currentViewCoordinates=this.originalViewCoordinates.clone()),this.updateEventCoordinates()))}else if(this.originalCoordinates&&this.currentCoordinates&&!this.dragHasStarted){var n=this.getDistance();3=c.EventDragDayLength&&(t=Math.floor(this.currentEventCoordinates.start/c.EventDragDayLength),this.currentEventCoordinates.start-=t*c.EventDragDayLength,this.currentEventCoordinates.dayNumber+=t),f.debug("event coordinates "+JSON.stringify(this.currentEventCoordinates)),m.$emit("calendar:drag")},getContainerBasedCoordinates:function(e,t){var n=t||this.currentCoordinates,i=n.getDelta(e.coordinates),a=e.element;return(i.xa.clientWidth||i.y<0||i.y>a.clientHeight)&&(i=null),i},prepareWithEventType:function(e){var t={multiday:this.getEventMultiDayViewCoordinates,"multiday-allday":this.getEventMultiDayAllDayViewCoordinates,monthly:this.getEventMonthlyViewCoordinates,unknown:null},n=t[e];this.eventType=e,this.getEventViewCoordinates=n},getEventMultiDayViewCoordinates:function(e,t){var n=this.getEventMultiDayAllDayViewCoordinates(e,t);if(n){var i=e.quarterHeight,a=this.getContainerBasedCoordinates(e,t);a.y+=e.element.scrollTop,n.y=Math.floor((a.y-c.EventDragHorizontalOffset)/i);var o=c.EventDragDayLength-1;n.y<0?n.y=0:n.y>o&&(n.y=o)}return n},getEventMultiDayAllDayViewCoordinates:function(e,t){var n,i=this.getContainerBasedCoordinates(e,t);if(i){n=new d;var a=e.dayWidth,o=e.daysOffset;n.x=Math.floor((i.x-o)/a);var r=0,s=y.$view.maxX;if("move-event"!=this.dragMode){var c=p.calendarData();c&&(r=s=c.index)}n.xs&&(n.x=s),n.y=0}else n=null;return n},getEventMonthlyViewCoordinates:function(e,t){var n,i=this.getContainerBasedCoordinates(e,t);if(i){n=new d;var a=e.maxX,o=e.dayWidth,r=e.daysOffset,s=e.dayHeight,c=Math.floor((i.y-0)/s);c<0&&(c=0),n.x=Math.floor((i.x-r)/o),n.x<0?n.x=0:n.x>a&&(n.x=a),n.x+=(a+1)*c,n.y=0}else n=null;return n},getDistance:function(){return this.currentCoordinates.getDistance(this.originalCoordinates)},setTimeFromQuarters:function(e,t){var n,i;n=Math.floor(t/4),i=t%4*15,e.setHours(n,i)}}}}}e.$inject=["$rootScope","$timeout","$log","Preferences","Calendar","CalendarSettings","Component"],angular.module("SOGo.SchedulerUI").directive("sgDraggableCalendarBlock",e)}(),function(){"use strict";function e(c,l,d){var u,h=this,p=l.controller("sgCalendarScrollView");c.nowDay=null,c.lineElement=null,c.updateLine=function(e){var t=new Date,n=t.getDayString(),i=t.getHours(),a=4*c.quarterHeight,o=t.getMinutes(),r=c.quarterHeight/15,s=parseInt(i*a+o*r-1);(e||n!=c.nowDay)&&(c.lineElement&&c.lineElement.remove(),c.lineElement=function(t,e){var n=angular.element("");p.isMultiColumn?e&&e[0].attributes["sg-day"].value==t&&l.append(n):_.forEach(e,function(e){e.attributes["sg-day"].value==t&&angular.element(e).find("div").eq(0).append(n)});return n}(n,c.days),c.nowDay=n);c.lineElement&&(c.lineElement.css("top",s+"px"),u=d(angular.bind(h,c.updateLine),6e4))},c.$on("$destroy",function(){u&&d.cancel(u)})}e.$inject=["$scope","$element","$timeout"],angular.module("SOGo.SchedulerUI").directive("sgNowLine",function(){return{restrict:"C",require:"^^sgCalendarScrollView",link:function(n,e,t,i){function a(){return e.find("sg-calendar-day")}var o=n.$watch(function(){return i.quarterHeight},function(e){if(e){o(),n.quarterHeight=e;var t=n.$watch(a,function(e){e.length&&(t(),n.days=e,n.updateLine())})}})},controller:e}})}(); //# sourceMappingURL=Scheduler.services.js.map \ No newline at end of file diff --git a/UI/WebServerResources/js/Scheduler.services.js.map b/UI/WebServerResources/js/Scheduler.services.js.map index bf3652bae..b79070d8c 100644 --- a/UI/WebServerResources/js/Scheduler.services.js.map +++ b/UI/WebServerResources/js/Scheduler.services.js.map @@ -1 +1 @@ -{"version":3,"sources":["Scheduler/Calendar.service.js","Scheduler/Component.service.js","Scheduler/CalendarController.js","Scheduler/CalendarListController.js","Scheduler/CalendarsController.js","Scheduler/ComponentController.js","Scheduler/sgCalendarDay.directive.js","Scheduler/sgCalendarDayBlock.directive.js","Scheduler/sgCalendarDayTable.directive.js","Scheduler/sgCalendarGhost.directive.js","Scheduler/sgCalendarListEvent.directive.js","Scheduler/sgCalendarListItem.directive.js","Scheduler/sgCalendarMonthDay.directive.js","Scheduler/sgCalendarMonthEvent.directive.js","Scheduler/sgCalendarScrollView.directive.js","Scheduler/sgCategoryStylesheet.directive.js","Scheduler/sgDraggableCalendarBlock.directive.js","Scheduler/sgNowLine.directive.js"],"names":["Calendar","futureCalendarData","this","init","name","id","newCalendarData","$$resource","create","$unwrap","$factory","$q","$timeout","$log","Settings","Resource","Preferences","Component","Acl","angular","extend","activeUser","$Preferences","$Component","$$Acl","$view","module","e","value","EventDragDayLength","EventDragHorizontalOffset","ConflictHTTPErrorCode","factory","$defaultCalendar","calendar","defaults","SOGoDefaultCalendar","_","find","$findAll","active","$add","list","sibling","isWebCalendar","$webcalendars","isSubscription","$subscriptions","$calendars","findIndex","o","i","localeCompare","push","splice","settings","FoldersOrder","saveFoldersOrder","flatMap","$reloadAll","data","writable","_this","forEach","isUndefined","fetch","then","calendars","union","filter","isOwned","acls","objectCreator","calendarData","group","owner","login","$get","$getIndex","indexOf","map","$subscribe","uid","path","userResource","$addWebCalendar","url","d","defer","urls","webCalendarURL","reject","post","isEditable","isRemote","debug","JSON","stringify","undefined","resolve","response","status","promise","reloadWebCalendars","promises","$error","l","statusText","all","$deleteComponents","components","component","isDefined","pid","uids","saveFoldersActivation","ids","request","folders","prototype","color","$acl","isSuperUser","$shadowData","$omit","$id","when","$futureCalendarData","getClassName","base","$rename","$save","$delete","remove","$reset","key","save","setCredentials","username","password","export","options","type","filename","open","$setActivation","$getComponent","componentId","recurrenceId","$find","isError","isObject","copy","futureComponentData","newComponentData","newguid","isNew","$rootScope","Component_STATUS","User","Card","Gravatar","STATUS","$settings","$User","$Card","$gravatar","timeFormat","$query","search","$queryEvents","sort","asc","filterpopup","$queryTasks","$refreshTimeout","$ghost","EventsFilterState","TasksFilterState","EventsSortingState","parseInt","TasksSortingState","show_completed","ShowCompletedTasks","$categories","SOGoCalendarCategoriesColors","SOGoTimeFormat","constant","NOT_LOADED","DELAYED_LOADING","LOADING","LOADED","DELAYED_MS","$selectedCount","count","$events","event","selected","length","$tasks","task","$startRefreshTimeout","cancel","refreshViewCheck","SOGoRefreshViewCheck","f","bind","$emit","timeInterval","$isLoading","$loaded","$filter","otherType","now","Date","day","getDate","month","getMonth","year","getFullYear","queryKey","capitalize","params","dirty","keys","$unwrapCollection","calendarId","occurrenceId","encodeURIComponent","join","filterCategories","query","re","RegExp","category","saveSelectedList","componentType","$eventsBlocksForView","view","date","firstDayOfWeek","viewAction","startDate","endDate","SOGoFirstDayOfWeek","beginOfWeek","setTime","getTime","addDays","setDate","setMonth","endOfWeek","$eventsBlocks","j","dayDates","dayNumbers","deferred","toLowerCase","sd","getDayString","ed","views","reduceComponent","associateComponent","objects","eventData","componentData","zipObject","eventsFields","start","c_startdate","hour","getHourString","blocks","block","nbr","isFirst","$views","viewIndex","viewData","allDayBlocks","reduce","events","flatten","days","dayIndex","dayNumber","calendarName","fields","invokeMap","monthData","dayData","$resetGhost","pointerHandler","startHour","endHour","$parseDate","dateString","time","substring","split","no_time","categories","repeat","alarm","action","quantity","unit","reference","relation","delta","isString","setMinutes","Math","round","getMinutes","end","minutesTo","setDelta","dueDate","due","completedDate","completed","c_category","$isRecurrent","byDayMask","occurrence","frequency","byday","toString","dates","rdate","rdates","interval","monthdays","months","until","$hasCustomRepeat","hasCustomRepeat","classification","match","exec","SOGoCalendarDefaultReminder","$hasAlarm","M","H","D","W","sendAppointmentNotifications","SOGoAppointmentSendEMailNotifications","destinationCalendar","attendees","attendee","image","email","updateFreeBusy","initOrganizer","results","organizer","cn","c_email","updateFreeBusyAttendee","isReadOnly","isEditableOccurrence","isInvitation","userHasRSVP","isInvitationOccurrence","showPercentComplete","percentComplete","enablePercentComplete","markAsCompleted","dlp","$mdDateLocaleProvider","$dateFormat","SOGoLongDateFormat","localizedCompletedDate","formatDate","localizedCompletedTime","formatTime","catch","coversFreeBusy","quarter","freebusy","updateFreeBusyCoverage","roundedStart","roundedEnd","startQuarter","endQuarter","daysUpTo","index","hourKey","currentDay","dayKey","getHours","beginOfDay","addMinutes","resource","domain","sday","eday","isMSExchange","c_folder","addAttendee","card","organizerCalendar","$isList","expandable","container","c_name","listId","refs","ref","c_cn","$preferredEmail","role","partstat","c_uid","$avatarIcon","c_domain","ismsexchange","hasAttendee","emails","deleteAttendee","currentAttendee","canRemindAttendeesByEmail","addAttachUrl","attachUrl","attachUrls","deleteAttachUrl","$addDueDate","toISOString","$deleteDueDate","$addStartDate","$deleteStartDate","$addRecurrenceDate","$deleteRecurrenceDate","$reply","reply","delegatedTo","$adjust","every","values","v","extraAttributes","format","startTime","endTime","dueTime","stringWithSeparator","occurrenceOnly","$futureComponentData","error","repeatDescription","localizedString","toUpperCase","alarmDescription","copyTo","destination","moveTo","CalendarController","$scope","$state","$stateParams","sgHotkeys","stateEventsBlocks","deregisterCalendarsList","vm","hotkeys","_goToPeriod","$event","direction","selectedDate","changeDate","_formatDate","setHours","replace","updateView","asDate","newDate","element","currentTarget","attr","go","changeView","expandedAllDays","toggleAllDays","$onInit","createHotkey","description","callback","args","registerHotkey","$on","deregisterHotkey","$inject","controller","CalendarListController","$mdDialog","focus","Dialog","CalendarSettings","Alarm","sortLabels","selectComponentType","reload","unselectComponents","searchMode","mode","openComponent","viewable","templateUrl","show","parent","document","body","targetEvent","clickOutsideToClose","escapeToClose","controllerAs","locals","stateComponent","newComponent","baseComponent","updateComponentFromGhost","coordinates","calendarNumber","activeCalendars","RecurrentComponentDialogController","updateThisOccurrence","hide","onComponentAdjustError","updateAllOccurrences","message","AttendeeConflictDialogController","conflictError","ignoreConflicts","currentEventCoordinates","summary","isAllDay","duration","finally","getDelta","originalEventCoordinates","originalCalendar","isException","getAlarms","template","title","location","priority","tasks","selectedList","multiple","selectAll","toggleComponentSelection","preventDefault","stopPropagation","confirmDeleteSelectedComponents","confirm","ok","openEvent","openTask","filteredBy","field","sortedBy","cancelSearch","SelectedList","ascending","CalendarsController","$window","$mdToast","service","newCalendar","ev","prompt","UserLogin","noop","addWebCalendar","WebCalendarAuthDialogController","scope","parts","hostname","formatted","authenticate","form","$valid","required","reason","$setValidity","inputType","subscribeToFolder","simple","content","position","hideDelay","sortableMode","toggleSortableMode","resetSort","sortableCalendars","scrollableContainer","containment","orderChanged","accept","sourceItemHandleScope","destSortableScope","destItemScope","sortableScope","SOGoCalendarCategories","asCSSIdentifier","$watch","pick","newList","oldList","commonList","intersectionBy","oldObject","isEqual","ComponentController","AddressBook","Account","_newMessage","recipients","accounts","account","onCompleteDeferred","$getMailboxes","mailboxes","$newMessage","editable","to","subject","onComplete","stateAccount","stateMessage","onCompletePromise","calendarService","close","highPriority","cardFilter","$filterAll","newMessageWithAllRecipients","newMessageWithRecipient","edit","editAllOccurrences","replyAllOccurrences","deleteOccurrence","deleteAllOccurrences","toggleRawSource","ComponentRawSourceDialogController","copySelectedComponent","moveSelectedComponent","ComponentEditorController","oldStartDate","oldEndDate","getDays","attendeesEditor","showRecurrenceEditor","showAttendeesEditor","attendeeConflictError","hours","toggleRecurrenceEditor","toggleAttendeesEditor","recurrenceMonthDaysAreRequired","changeFrequency","changeCalendar","$cards","partial","address","emailRE","createCard","str","searchText","trim","charCodeAt","test","charAt","removeAttendee","$setDirty","priorityLevel","changeAlarmRelation","alarmRelation","onAlarmChange","$setPristine","reset","addStartDate","removeStartDate","addDueDate","removeDueDate","adjustStartTime","valueOf","adjustEndTime","adjustDueTime","sgCalendarDayController","dayString","directive","restrict","sgCalendarDayBlock","clickBlock","tElem","tAttrs","p","has","link","iElement","attrs","pc","left","right","siblings","css","c_isallday","addClass","userState","c_isopaque","c_status","sgCalendarGhost","require","ctrls","domElement","calendarDayCtrl","scrollViewCtrl","originalCalendarNumber","deregisterDragStart","deregisterDrag","showGhost","isRelative","durationLeft","maxDuration","quartersToHM","quarterHeight","topOffset","removeClass","deregisterDragEnd","forEachRight","classList","c","quarters","minutes","mins","floor","sgCalendarListEvent","clickComponent","userstate","sgCalendarListItemController","$element","$mdPanel","$mdMedia","$mdSidenav","sgConstant","$ctrl","editMode","$postLink","clickableElement","nameElements","getElementsByClassName","inputContainer","inputElement","moreOptionsButton","last","updateCalendarName","innerHTML","editFolder","add","srcEvent","select","panel","saveFolder","disabled","revertEditing","confirmDelete","alert","showMenu","panelPosition","newPanelPosition","relativeTo","addPanelPosition","xPosition","ALIGN_START","yPosition","ALIGN_TOPS","panelAnimation","newPanelAnimation","openFrom","withAnimation","animation","FADE","config","attachTo","itemCtrl","bindToController","MenuController","trapFocus","focusOnOpen","mdPanelRef","FileUploader","$menuCtrl","showOnly","showAll","showProperties","PropertiesDialogController","srcCalendar","saveProperties","showLinks","LinksDialogController","importCalendar","CalendarImportDialogController","folder","filterByExtension","item","isTextFile","uploader","ApplicationBaseURL","autoUpload","queueLimit","filters","fn","onSuccessItem","headers","msg","imported","onErrorItem","share","$users","usersWithACL","users","panelRef","panelEl","one","sgCalendarScrollView","$document","$mdGesture","sgCalendarScrollViewController","isMultiColumn","sgScrollView","getQuarterHeight","scrollStep","getDayNumbers","maxX","getMaxColumns","onDragStart","deregisterDragStop","onDragEnd","bindedUpdateCoordinates","updateCoordinates","bindedUpdateFromPointerHandler","updateFromPointerHandler","on","hourCell","quartersOffset","SOGoDayStartTime","getElementById","scrollTop","offsetTop","$destroy","off","hour0","hour23","height","getDayDimensions","viewLeft","width","leftOffset","nodes","domRect","tileHeader","getBoundingClientRect","clientHeight","offset","top","getElementsByTagName","el","attributes","mdGridList","max","dayDimensions","x","y","dayHeight","dayWidth","daysOffset","pointerCoordinates","scrollY","minY","getContainerBasedCoordinates","lastScroll","ngModel","sgDraggableCalendarBlock","blockIndex","isFirstBlock","isLastBlock","dragGrip","leftGrip","rightGrip","topGrip","bottomGrip","parentNode","tagName","append","clone","initGrips","onDragDetect","dragMode","rect","scrollableZone","target","scrollHeight","pageX","className","SOGoEventDragPointerHandler","initFromEvent","onDrag","updateFromEvent","pointer","dragHasStarted","b","dragging","SOGoCoordinates","SOGoEventDragEventCoordinates","eventType","setEventType","otherCoordinates","getDistance","sqrt","weekDay","initFromBlock","prevDayNumber","sumBy","currentDayNumber","initFromCalendar","_quartersToHM","getStartTime","getEndTime","originalCoordinates","currentCoordinates","originalViewCoordinates","currentViewCoordinates","getEventViewCoordinates","pageY","newEventCoordinates","setTimeFromQuarters","updateEventCoordinates","distance","isHourCell","isMonthly","newData","hasClass","parseDate","prepareWithEventType","dragStart","newDuration","deltaDays","deltaQuarters","ceil","clientWidth","methods","multiday","getEventMultiDayViewCoordinates","multiday-allday","getEventMultiDayAllDayViewCoordinates","monthly","getEventMonthlyViewCoordinates","unknown","method","pxCoordinates","maxY","minX","daysY","sgNowLineController","updater","nowDay","lineElement","updateLine","force","hourHeight","minuteHeight","$lineElement","dayElement","eq","_addLine","iAttr","sgCalendarScrollViewCtrl","_getDays","_unwatchView","_unwatchDays"],"mappings":"CAEA,WACE,aAOA,SAASA,EAASC,GAGhB,GADAC,KAAKC,KAAKF,GACNC,KAAKE,OAASF,KAAKG,GAAI,CAEzB,IAAIC,EAAkBN,EAASO,WAAWC,OAAO,eAAgBN,KAAKE,MACtEF,KAAKO,QAAQH,IASjBN,EAASU,SAAW,CAAC,KAAM,WAAY,OAAQ,aAAc,WAAY,cAAe,YAAa,MAAO,SAASC,EAAIC,EAAUC,EAAMC,EAAUC,EAAUC,EAAaC,EAAWC,GAanL,OAZAC,QAAQC,OAAOpB,EAAU,CACvBW,GAAIA,EACJC,SAAUA,EACVC,KAAMA,EACNN,WAAY,IAAIQ,EAASD,EAASO,WAAW,aAAe,WAAYP,EAASO,cACjFC,aAAcN,EACdO,WAAYN,EACZO,MAAON,EACPG,WAAYP,EAASO,aACrBI,MAAO,OAGFzB,IAOT,IACEmB,QAAQO,OAAO,oBAEjB,MAAMC,GACJR,QAAQO,OAAO,mBAAoB,CAAC,gBAEtCP,QAAQO,OAAO,oBACZE,MAAM,mBAAoB,CACzBC,mBAA6B,GAC7BC,0BAA6B,EAC7BC,sBAA6B,MAE9BC,QAAQ,WAAYhC,EAASU,UAOhCV,EAASiC,iBAAmB,WAC1B,IACIC,EAEJ,MAAuB,SAHDlC,EAASsB,aAAaa,SAASC,sBAInDF,EAAWG,EAAEC,KAAKtC,EAASuC,SAAS,MAAM,GAAO,SAASL,GACxD,OAAOA,EAASM,UAGTN,EAAS7B,GAGb,YAQTL,EAASyC,KAAO,SAASP,GAEvB,IAAIQ,EAAMC,EAGRD,EADER,EAASU,cACJ1C,KAAK2C,cACLX,EAASY,eACT5C,KAAK6C,eAEL7C,KAAK8C,YAEdL,EAAUN,EAAEY,UAAUP,EAAM,SAASQ,EAAGC,GACtC,MAAuB,YAAfjB,EAAS7B,IACA,YAAR6C,EAAE7C,IAA0D,EAAtC6C,EAAE9C,KAAKgD,cAAclB,EAAS9B,SAEjD,EACZsC,EAAKW,KAAKnB,GAEVQ,EAAKY,OAAOX,EAAS,EAAGT,GAEtBlC,EAASsB,aAAaiC,SAASvD,SAASwD,cAE1CxD,EAASyD,iBAAiBpB,EAAEqB,QAAQ1D,EAASuC,WAAY,OAE3DvC,EAAS2D,cAUX3D,EAASuC,SAAW,SAASqB,EAAMC,GACjC,IAAIC,EAAQ5D,KACZ,GAAI0D,EACF1D,KAAK8C,WAAa,GAClB9C,KAAK6C,eAAiB,GACtB7C,KAAK2C,cAAgB,GAErB1B,QAAQ4C,QAAQH,EAAM,SAASV,EAAGC,GAChC,IAAIjB,EAAW,IAAIlC,EAASkD,GACxBhB,EAASU,cACXkB,EAAMjB,cAAcQ,KAAKnB,GAClBA,EAASY,eAChBgB,EAAMf,eAAeM,KAAKnB,GAE1B4B,EAAMd,WAAWK,KAAKnB,UAGvB,GAAIf,QAAQ6C,YAAY9D,KAAK8C,YAIhC,OAHA9C,KAAK8C,WAAa,GAClB9C,KAAK6C,eAAiB,GACtB7C,KAAK2C,cAAgB,GACd7C,EAASO,WAAW0D,MAAM,iBAAiBC,KAAK,SAASN,GAC9D,OAAO5D,EAASuC,SAASqB,EAAKO,UAAWN,KAI7C,OAAIA,EACKxB,EAAE+B,MAAMlE,KAAK8C,WAAYX,EAAEgC,OAAOnE,KAAK6C,eAAgB,SAASb,GACrE,OAAOA,EAASoC,SAAWpC,EAASqC,KAAKC,iBAItCnC,EAAE+B,MAAMlE,KAAK8C,WAAY9C,KAAK6C,eAAgB7C,KAAK2C,gBAO5D7C,EAAS2D,WAAa,WACpB,IAAIG,EAAQ5D,KAEZF,EAASO,WAAW0D,MAAM,iBAAiBC,KAAK,SAASN,GACvDvB,EAAE0B,QAAQH,EAAKO,UAAW,SAASM,GACjC,IAAIC,EAAOxC,EAGTwC,EADED,EAAa7B,cACPkB,EAAMjB,cACP4B,EAAaE,OAAS3E,EAASqB,WAAWuD,MACzCd,EAAMf,eAENe,EAAMd,YAEhBd,EAAWG,EAAEC,KAAKoC,EAAO,SAASxB,GAAK,OAAOA,EAAE7C,IAAMoE,EAAapE,OAEjE6B,EAAS/B,KAAKsE,QAWtBzE,EAAS6E,KAAO,SAASxE,GACvB,IAAI6B,EAQJ,OANAA,EAAWG,EAAEC,KAAKtC,EAASgD,WAAY,SAASE,GAAK,OAAOA,EAAE7C,IAAMA,OAElE6B,EAAWG,EAAEC,KAAKtC,EAAS+C,eAAgB,SAASG,GAAK,OAAOA,EAAE7C,IAAMA,KACrE6B,IACHA,EAAWG,EAAEC,KAAKtC,EAAS6C,cAAe,SAASK,GAAK,OAAOA,EAAE7C,IAAMA,KAElE6B,GASTlC,EAAS8E,UAAY,SAASzE,GAC5B,IAAI8C,EAQJ,OANAA,EAAId,EAAE0C,QAAQ1C,EAAE2C,IAAIhF,EAASgD,WAAY,MAAO3C,IACxC,IACN8C,EAAId,EAAE0C,QAAQ1C,EAAE2C,IAAIhF,EAAS+C,eAAgB,MAAO1C,IAClD8C,EAAI,IACNA,EAAId,EAAE0C,QAAQ1C,EAAE2C,IAAIhF,EAAS6C,cAAe,MAAOxC,IAE9C8C,GAUTnD,EAASiF,WAAa,SAASC,EAAKC,GAClC,IAAIrB,EAAQ5D,KACZ,OAAOF,EAASO,WAAW6E,aAAaF,GAAKjB,MAAMkB,EAAM,aAAajB,KAAK,SAASO,GAClF,IAAIvC,EAAW,IAAIlC,EAASmB,QAAQC,OAAO,CAAEoB,OAAQ,GAAKiC,IAM1D,OALKpC,EAAEC,KAAKwB,EAAMf,eAAgB,SAASG,GACzC,OAAOA,EAAE7C,IAAMoE,EAAapE,MAE5BL,EAASyC,KAAKP,GAETA,KAUXlC,EAASqF,gBAAkB,SAASC,GAClC,IACIC,EAAIvF,EAASW,GAAG6E,QAmCpB,OAjCInD,EAAEC,KAHMpC,KAGK2C,cAAe,SAASK,GACrC,OAAOA,EAAEuC,KAAKC,gBAAkBJ,IAGlCC,EAAEI,SAGF3F,EAASO,WAAWqF,KAAK,KAAM,iBAAkB,CAAEN,IAAKA,IAAOpB,KAAK,SAASO,GAC3EtD,QAAQC,OAAOqD,EAAc,CAC3B7B,eAAe,EACfiD,YAAY,EACZC,UAAU,EACVnB,MAAO3E,EAASqB,WAAWuD,MAC3Ba,KAAM,CAAEC,eAAgBJ,KAE1B,IAAIpD,EAAW,IAAIlC,EAASyE,GAC5BzE,EAASO,WAAW0D,MAAM/B,EAAS7B,GAAI,UAAU6D,KAAK,SAASN,GAE7D5D,EAASa,KAAKkF,MAAMC,KAAKC,UAAUrC,OAAMsC,EAAW,IACpDlG,EAASyC,KAAKP,GACdqD,EAAEY,WACD,SAASC,GACa,KAAnBA,EAASC,OAEXd,EAAEY,QAAQjE,GAGVqD,EAAEI,YAGLJ,EAAEI,QAGAJ,EAAEe,SASXtG,EAASuG,mBAAqB,WAC5B,IAAIC,EAAW,GAYf,OAVAnE,EAAE0B,QAAQ7D,KAAK2C,cAAe,SAASX,GACrC,IAAIoE,EAAUtG,EAASO,WAAW0D,MAAM/B,EAAS7B,GAAI,UACrDiG,EAAQpC,KAAK,SAASN,GACpB1B,EAASuE,QAAS,GACjB,SAASL,GACVlE,EAASuE,OAASC,EAAEN,EAASO,cAE/BH,EAASnD,KAAKiD,KAGTtG,EAASW,GAAGiG,IAAIJ,IASzBxG,EAAS6G,kBAAoB,SAASC,GACpC,IAAkB3C,EAAY,GAAIqC,EAAW,GAY7C,OAVAnE,EAAE0B,QAAQ+C,EAAY,SAASC,GACxB5F,QAAQ6F,UAAU7C,EAAU4C,EAAUE,QACzC9C,EAAU4C,EAAUE,KAAO,IAC7B9C,EAAU4C,EAAUE,KAAK5D,KAAK0D,EAAU1G,MAG1CgC,EAAE0B,QAAQI,EAAW,SAAS+C,EAAMD,GAClCT,EAASnD,KAAKrD,EAASO,WAAWqF,KAAKqB,EAAK,cAAe,CAACC,KAAMA,OAG7DlH,EAASW,GAAGiG,IAAIJ,IAUzBxG,EAASmH,sBAAwB,SAASC,GACxC,IAAIC,EAAU,GAOd,OALAhF,EAAE0B,QAAQqD,EAAK,SAAS/G,GACtB,IAAI6B,EAAWlC,EAAS6E,KAAKxE,GAC7BgH,EAAQnF,EAAS7B,IAAM6B,EAASM,SAG3BxC,EAASO,WAAWqF,KAAK,KAAM,wBAAyByB,IASjErH,EAASyD,iBAAmB,SAAS6D,GACnC,OAAOpH,KAAKK,WAAWqF,KAAK,KAAM,mBAAoB,CAAE0B,QAASA,IAAWpD,KAAK,WAE/E,KADAlE,EAASsB,aAAaiC,SAASvD,SAASwD,aAAe8D,GAGrD,OAAOtH,EAASO,WAAW0D,MAAM,iBAAiBC,KAAK,SAASN,GAC9D,OAAO5D,EAASuC,SAASqB,EAAKO,gBAWtCnE,EAASuH,UAAUpH,KAAO,SAASyD,GACjC1D,KAAKsH,MAAQtH,KAAKsH,OAAS,UAC3BtH,KAAKsC,OAAS,EACdrB,QAAQC,OAAOlB,KAAM0D,GACjB1D,KAAKG,KACPH,KAAKuH,KAAO,IAAIzH,EAASwB,MAAM,YAActB,KAAKG,KAGpDH,KAAKoE,QAAUtE,EAASqB,WAAWqG,aAAexH,KAAKyE,OAAS3E,EAASqB,WAAWuD,MACpF1E,KAAK4C,gBAAkB5C,KAAK4F,UAAY5F,KAAKyE,OAAS3E,EAASqB,WAAWuD,OACtEzD,QAAQ6C,YAAY9D,KAAKyH,cAAiBzH,KAAKyH,YAAYtH,KAE7DH,KAAKyH,YAAczH,KAAK0H,UAU5B5H,EAASuH,UAAUM,IAAM,WAGvB,OAAI3H,KAAKG,GAEAL,EAASW,GAAGmH,KAAK5H,KAAKG,IAItBH,KAAK6H,oBAAoB7D,KAAK,SAAShC,GAC5C,OAAIA,EAAS7B,GACJ6B,EAAS7B,GAETL,EAASW,GAAGgF,YAW3B3F,EAASuH,UAAUS,aAAe,SAASC,GAGzC,OAFI9G,QAAQ6C,YAAYiE,KACtBA,EAAO,MACFA,EAAO,UAAY/H,KAAKG,IAUjCL,EAASuH,UAAUW,QAAU,WAC3B,IACI/E,EACAgB,EAFAL,EAAQ5D,KAIZ,OAAIA,KAAKE,MAAQF,KAAKyH,YAAYvH,KAEzBJ,EAASW,GAAGmH,QAInB3D,EADEjE,KAAK0C,cACK5C,EAAS6C,cACd3C,KAAK4C,eACA9C,EAAS+C,eAET/C,EAASgD,YAGd,GADTG,EAAId,EAAE0C,QAAQ1C,EAAE2C,IAAIb,EAAW,MAAOjE,KAAKG,KAElCH,KAAKiI,QAAQjE,KAAK,WACvBC,EAAUb,OAAOH,EAAG,GACpBnD,EAASyC,KAAKqB,KAIT9D,EAASW,GAAGgF,WAUvB3F,EAASuH,UAAUa,QAAU,WAC3B,IACI1F,EACA4D,EAFAxC,EAAQ5D,KAgBZ,OAZIA,KAAK4C,gBACPwD,EAAUtG,EAASO,WAAW0D,MAAM/D,KAAKG,GAAI,eAC7CqC,EAAO1C,EAAS+C,iBAGhBuD,EAAUtG,EAASO,WAAW8H,OAAOnI,KAAKG,IAExCqC,EADExC,KAAK0C,cACA5C,EAAS6C,cAET7C,EAASgD,YAGbsD,EAAQpC,KAAK,WAClB,IAAIf,EAAId,EAAE0C,QAAQ1C,EAAE2C,IAAItC,EAAM,MAAOoB,EAAMzD,IAC3CqC,EAAKY,OAAOH,EAAG,MASnBnD,EAASuH,UAAUe,OAAS,WAC1B,IAAIxE,EAAQ5D,KACZiB,QAAQ4C,QAAQ7D,KAAM,SAAS0B,EAAO2G,GACzB,eAAPA,GAAkC,KAAVA,EAAI,WACvBzE,EAAMyE,KAGjBpH,QAAQC,OAAOlB,KAAMA,KAAKyH,aAC1BzH,KAAKyH,YAAczH,KAAK0H,SAS1B5H,EAASuH,UAAUY,MAAQ,WACzB,IAAIrE,EAAQ5D,KACRqF,EAAIvF,EAASW,GAAG6E,QAYpB,OAVAxF,EAASO,WAAWiI,KAAKtI,KAAKG,GAAIH,KAAK0H,SAAS1D,KAAK,SAASN,GAG5D,OADAE,EAAM6D,YAAc7D,EAAM8D,QACnBrC,EAAEY,QAAQvC,IAChB,SAASA,GAGV,OADAE,EAAMwE,SACC/C,EAAEI,OAAO/B,KAGX2B,EAAEe,SASXtG,EAASuH,UAAUkB,eAAiB,SAASC,EAAUC,GACrD,IAAI7E,EAAQ5D,KACRqF,EAAIvF,EAASW,GAAG6E,QAiBpB,OAfAxF,EAASO,WAAWqF,KAAK1F,KAAKG,GAAI,kBAAmB,CAAEqI,SAAUA,EAAUC,SAAUA,IAAYzE,KAAK,WACpGlE,EAASO,WAAW0D,MAAMH,EAAMzD,GAAI,UAAU6D,KAAK,SAASN,GAC1D5D,EAASyC,KAAKqB,GACdyB,EAAEY,WACD,SAASC,GACa,KAAnBA,EAASC,OAEXd,EAAEI,OAAOe,EAAE,+BAGXnB,EAAEI,OAAOS,EAASO,eAGrBpB,EAAEI,QAEEJ,EAAEe,SASXtG,EAASuH,UAAUqB,OAAS,WAC1B,IAAIC,EAOJ,OALAA,EAAU,CACRC,KAAM,2BACNC,SAAU7I,KAAKE,KAAO,QAGjBJ,EAASO,WAAWyI,KAAK9I,KAAKG,GAAK,OAAQ,SAAU,KAAMwI,IASpE7I,EAASuH,UAAU0B,eAAiB,WAClC,OAAOjJ,EAASO,WAAW0D,MAAM/D,KAAKG,IAAKH,KAAKsC,OAAO,GAAG,MAAQ,mBASpExC,EAASuH,UAAU2B,cAAgB,SAASC,EAAaC,GACvD,OAAOpJ,EAASuB,WAAW8H,MAAMnJ,KAAKG,GAAI8I,EAAaC,IASzDpJ,EAASuH,UAAU9G,QAAU,SAASR,GACpC,IAAI6D,EAAQ5D,KAGZA,KAAK6H,oBAAsB9H,EAAmBiE,KAAK,SAASN,GAC1D,OAAO5D,EAASY,SAAS,WAGvB,OADAkD,EAAM3D,KAAKyD,GACJE,KAER,SAASF,GACVE,EAAMwF,SAAU,EACZnI,QAAQoI,SAAS3F,IACnB5D,EAASY,SAAS,WAChBO,QAAQC,OAAO0C,EAAOF,QAY9B5D,EAASuH,UAAUK,MAAQ,WACzB,IAAI1F,EAAW,GAOf,OANAf,QAAQ4C,QAAQ7D,KAAM,SAAS0B,EAAO2G,GACzB,eAAPA,GACU,KAAVA,EAAI,KACNrG,EAASqG,GAAOpH,QAAQqI,KAAK5H,MAG1BM,GAhnBX,GCAA,WACE,aAOA,SAASjB,EAAUwI,GAEjB,GAAwC,mBAA7BA,EAAoBvF,MAE7B,GADAhE,KAAKC,KAAKsJ,GACNvJ,KAAK+G,MAAQ/G,KAAKG,GAAI,CAGxB,IAAIqJ,EAAmBzI,EAAUV,WAAWoJ,QAAQzJ,KAAK+G,KACzD/G,KAAKO,QAAQiJ,GACbxJ,KAAK0J,OAAQ,QAKf1J,KAAKO,QAAQgJ,GASjBxI,EAAUP,SAAW,CAAC,KAAM,WAAY,OAAQ,aAAc,aAAc,qBAAsB,cAAe,OAAQ,OAAQ,WAAY,WAAY,SAASC,EAAIC,EAAUC,EAAMgJ,EAAY/I,EAAUgJ,EAAkB9I,EAAa+I,EAAMC,EAAMC,EAAUlJ,GA4C/P,OA3CAI,QAAQC,OAAOH,EAAW,CACxBiJ,OAAQJ,EACRnJ,GAAIA,EACJC,SAAUA,EACVC,KAAMA,EACNgJ,WAAYA,EACZM,UAAWrJ,EACXsJ,MAAOL,EACPzI,aAAcN,EACdqJ,MAAOL,EACPM,UAAWL,EACX1J,WAAY,IAAIQ,EAASD,EAASO,WAAW,aAAe,WAAYP,EAASO,cACjFkJ,WAAY,QAEZC,OAAQ,CAAE5I,MAAO,GAAI6I,OAAQ,2BAE7BC,aAAc,CAAEC,KAAM,QAASC,IAAK,EAAGC,YAAa,cAEpDC,YAAa,CAAEH,KAAM,SAAUC,IAAK,EAAGC,YAAa,mBACpDE,gBAAiB,KACjBC,OAAQ,KAGNhK,EAAYuC,SAASvD,SAASiL,oBAChChK,EAAUyJ,aAAaG,YAAc7J,EAAYuC,SAASvD,SAASiL,mBACjEjK,EAAYuC,SAASvD,SAASkL,mBAChCjK,EAAU6J,YAAYD,YAAc7J,EAAYuC,SAASvD,SAASkL,kBAChElK,EAAYuC,SAASvD,SAASmL,qBAChClK,EAAUyJ,aAAaC,KAAO3J,EAAYuC,SAASvD,SAASmL,mBAAmB,GAC/ElK,EAAUyJ,aAAaE,IAAMQ,SAASpK,EAAYuC,SAASvD,SAASmL,mBAAmB,KAErFnK,EAAYuC,SAASvD,SAASqL,oBAChCpK,EAAU6J,YAAYH,KAAO3J,EAAYuC,SAASvD,SAASqL,kBAAkB,GAC7EpK,EAAU6J,YAAYF,IAAMQ,SAASpK,EAAYuC,SAASvD,SAASqL,kBAAkB,KAEvFpK,EAAU6J,YAAYQ,eAAiBF,SAASpK,EAAYuC,SAASgI,oBAErEtK,EAAUuK,YAAcxK,EAAYmB,SAASsJ,6BAEzCzK,EAAYmB,SAASuJ,iBACvBzK,EAAUsJ,WAAavJ,EAAYmB,SAASuJ,gBAGvCzK,IAOT,IACEE,QAAQO,OAAO,oBAEjB,MAAMC,GACJR,QAAQO,OAAO,mBAAoB,CAAC,gBAEtCP,QAAQO,OAAO,oBACZiK,SAAS,qBAAsB,CAC9BC,WAAiB,EACjBC,gBAAiB,EACjBC,QAAiB,EACjBC,OAAiB,EACjBC,WAAiB,MAElBhK,QAAQ,YAAaf,EAAUP,UAQlCO,EAAUgL,eAAiB,WACzB,IAAIC,EASJ,OAPAA,EAAQ,EACJjL,EAAUkL,UACZD,GAAU7J,EAAEgC,OAAOpD,EAAUkL,QAAS,SAASC,GAAS,OAAOA,EAAMC,WAAcC,QAEjFrL,EAAUsL,SACZL,GAAU7J,EAAEgC,OAAOpD,EAAUsL,OAAQ,SAASC,GAAQ,OAAOA,EAAKH,WAAcC,QAE3EJ,GASTjL,EAAUwL,qBAAuB,SAAS3D,GACpC7H,EAAU8J,iBACZ9J,EAAUL,SAAS8L,OAAOzL,EAAU8J,iBAGtC,IAAI4B,EAAmB1L,EAAUK,aAAaa,SAASyK,qBACvD,GAAID,GAAwC,YAApBA,EAAgC,CACtD,IAAIE,EAAI1L,QAAQ2L,KAAK7L,EAAU4I,WAAY5I,EAAU4I,WAAWkD,MAAO,kBACvE9L,EAAU8J,gBAAkB9J,EAAUL,SAASiM,EAAmC,IAAhCF,EAAiBK,kBAUvE/L,EAAUgM,WAAa,WACrB,OAAOhM,EAAUiM,SAAWjM,EAAUiJ,OAAO4B,SAW/C7K,EAAUkM,QAAU,SAASrE,EAAMD,GACjC,IASIY,EAEA2D,EAXAtJ,EAAQ5D,KACRmN,EAAM,IAAIC,KACVC,EAAMF,EAAIG,UACVC,EAAQJ,EAAIK,WAAa,EACzBC,EAAON,EAAIO,cACXC,EAAW,SAAW/E,EAAKgF,aAC3BC,EAAS,CACPR,IAAUI,GAAQF,EAAQ,GAAG,IAAI,IAAMA,GAASF,EAAM,GAAG,IAAI,IAAMA,GAGrES,GAAQ,EAgCZ,OA7BA/M,EAAUwL,qBAAqB3D,GAE/B3H,QAAQC,OAAOlB,KAAKsK,OAAQuD,GAExBlF,GACFxG,EAAE0B,QAAQ1B,EAAE4L,KAAKpF,GAAU,SAASN,GAElCyF,GAAUlK,EAAM0G,OAAOjC,IAAQM,EAAQN,IAAQtH,EAAUuJ,OAAOjC,GACrD,UAAPA,GAAmBM,EAAQN,GAC7ByF,GAAQ,EAED7M,QAAQ6F,UAAUlD,EAAM0G,OAAOjC,IACtCzE,EAAM0G,OAAOjC,GAAOM,EAAQN,GAE5BzE,EAAM+J,GAAUtF,GAAOM,EAAQN,KAKrCkB,EAAsBvJ,KAAKK,WAAW0D,MAAM,KAAM6E,EAAO,OACb3H,QAAQC,OAAOlB,KAAK2N,GAAW3N,KAAKsK,SAG5EwD,WAEK/M,EADPmM,EAAqB,SAARtE,EAAkB,UAAY,UAE3C7H,EAAUJ,KAAKkF,MAAM,mBAAqBqH,IAGrClN,KAAKgO,kBAAkBpF,EAAMW,IAWtCxI,EAAUoI,MAAQ,SAAS8E,EAAYhF,EAAaiF,GAClD,IAAyBjJ,EAAO,CAACgJ,EAAYE,mBAAmBlF,IAOhE,OALIiF,GACFjJ,EAAK9B,KAAK+K,GAIL,IAAInN,EAFWf,KAAKK,WAAW0D,MAAMkB,EAAKmJ,KAAK,KAAM,UAW9DrN,EAAUsN,iBAAmB,SAASC,GACpC,IAAIC,EAAK,IAAIC,OAAOF,EAAO,KAC3B,OAAOnM,EAAEgC,OAAOhC,EAAE4L,KAAKhN,EAAUuK,aAAc,SAASmD,GACtD,OAA+B,GAAxBA,EAASlE,OAAOgE,MAU3BxN,EAAU2N,iBAAmB,SAASC,GACpC,OAAO3O,KAAKK,WAAWqF,KAAK,KAAM,mBAAoB,CAAElD,KAAMmM,EAAgB,cAUhF5N,EAAU6N,qBAAuB,SAASC,EAAMC,GAC9C,IAAIC,EAAgBC,EAAYC,EAAWC,EA6B3C,OA3BAH,EAAiBhO,EAAUK,aAAaa,SAASkN,mBACrC,OAARN,GACFG,EAAa,UACbC,EAAYC,EAAUJ,GAEP,kBAARD,GACPG,EAAa,qBACbC,EAAYC,EAAUJ,GAEP,QAARD,GACPG,EAAa,WACbC,EAAYH,EAAKM,YAAYL,IAC7BG,EAAU,IAAI9B,MACNiC,QAAQJ,EAAUK,WAC1BJ,EAAQK,QAAQ,IAED,SAARV,IACPG,EAAa,aACbC,EAAYH,GACFU,QAAQ,GAClBP,EAAYA,EAAUG,YAAYL,IAClCG,EAAU,IAAI9B,MACNiC,QAAQP,EAAKQ,WACrBJ,EAAQO,SAASP,EAAQ1B,WAAa,GACtC0B,EAAQK,SAAS,GACjBL,EAAUA,EAAQQ,UAAUX,IAEvB/O,KAAK2P,cAAcX,EAAYC,EAAWC,IAWnDnO,EAAU4O,cAAgB,SAASd,EAAMI,EAAWC,GAClD,IAAIrB,EAA6B5K,EAAG2M,EAAGC,EAAW,GAAIC,EAAa,GAC/DC,EAAWhP,EAAUN,GAAG6E,QAmG5B,OAjGAuI,EAAS,CAAEgB,KAAMA,EAAKmB,cAAeC,GAAIhB,EAAUiB,eAAgBC,GAAIjB,EAAQgB,gBACzDlQ,KAAKK,WAAW0D,MAAM,KAAM,eAAgB8J,GAC9C7J,KAAK,SAASoM,GAChC,IAAIC,EAAiBC,EAErBD,EAAkB,SAASE,EAASC,EAAWvN,GAC7C,IAEI4D,EAFA4J,EAAgBtO,EAAEuO,UAAU1Q,KAAK2Q,aAAcH,GAC/CI,EAAQ,IAAIxD,KAAiC,IAA5BqD,EAAcI,aAMnC,OAJAJ,EAAcK,KAAOF,EAAMG,gBAC3BN,EAAcO,OAAS,GACvBnK,EAAY,IAAI9F,EAAU0P,GAC1BF,EAAQpN,KAAK0D,GACN0J,GAGTD,EAAqB,SAASW,GAC5BjR,KAAKiR,EAAMC,KAAKF,OAAO7N,KAAK8N,GAC5BA,EAAMpK,UAAY7G,KAAKiR,EAAMC,KAC7BD,EAAME,QAA4C,GAAjCnR,KAAKiR,EAAMC,KAAKF,OAAO5E,QAG1CrL,EAAUqQ,OAAS,GACnBrQ,EAAUL,SAAS,WACjByB,EAAE0B,QAAQuM,EAAO,SAAS1M,EAAM2N,GAC9B,IAAqDC,EAAjD1K,EAAa,GAAIoK,EAAS,GAAIO,EAAe,GAwBjD,IArBA7N,EAAKiN,aAAavN,OAAOjB,EAAE0C,QAAQnB,EAAKiN,aAAc,YAAoB,EAAG,OAC7EjN,EAAKiN,aAAavN,OAAOjB,EAAE0C,QAAQnB,EAAKiN,aAAc,UAAoB,EAAG,MAC7EjN,EAAKiN,aAAavN,OAAOjB,EAAE0C,QAAQnB,EAAKiN,aAAc,mBAAoB,EAAG,gBAC7EjN,EAAKiN,aAAavN,OAAOjB,EAAE0C,QAAQnB,EAAKiN,aAAc,WAAoB,EAAG,WAG7ExO,EAAEqP,OAAO9N,EAAK+N,OAAQtP,EAAEyK,KAAKyD,EAAiB3M,GAAOkD,GAGrDzE,EAAE0B,QAAQ1B,EAAEuP,QAAQhO,EAAKsN,QAAS7O,EAAEyK,KAAK0D,EAAoB1J,IAG7DzE,EAAE0B,QAAQ1B,EAAEuP,QAAQhO,EAAK6N,cAAepP,EAAEyK,KAAK0D,EAAoB1J,IAG3C,IAApBiJ,EAASzD,SACXyD,EAAW1N,EAAEqB,QAAQE,EAAKiO,KAAM,QAChC7B,EAAa3N,EAAEqB,QAAQE,EAAKiO,KAAM,WAI/B1O,EAAI,EAAGA,EAAIS,EAAKsN,OAAO5E,OAAQnJ,IAAK,CACvC,IAAK2M,EAAI,EAAGA,EAAIlM,EAAKsN,OAAO/N,GAAGmJ,OAAQwD,IACrClM,EAAKsN,OAAO/N,GAAG2M,GAAGgC,SAAW3O,EAAKoO,EAAY3N,EAAKsN,OAAO5E,OAC1D1I,EAAKsN,OAAO/N,GAAG2M,GAAGiC,UAAY/B,EAAW7M,GAE3C+N,EAAOnB,EAAS5M,IAAMS,EAAKsN,OAAO/N,GAIpC,IAAKA,EAAI,EAAGA,EAAIS,EAAK6N,aAAanF,OAAQnJ,IAAK,CAC7C,IAAK2M,EAAI,EAAGA,EAAIlM,EAAK6N,aAAatO,GAAGmJ,OAAQwD,IAC3ClM,EAAK6N,aAAatO,GAAG2M,GAAGgC,SAAW3O,EAAKoO,EAAY3N,EAAK6N,aAAanF,OACtE1I,EAAK6N,aAAatO,GAAG2M,GAAGiC,UAAY/B,EAAW7M,GAEjDsO,EAAa1B,EAAS5M,IAAMS,EAAK6N,aAAatO,GAiBhDlC,EAAUJ,KAAKkF,MAAM,iBAAmB1D,EAAEuP,QAAQhO,EAAKsN,QAAQ5E,OAAS,KACxErL,EAAUJ,KAAKkF,MAAM,yBAA2B1D,EAAEuP,QAAQhO,EAAK6N,cAAcnF,OAAS,KAGtFkF,EAAW,CAAEN,OAAQA,EAAQO,aAAcA,GACvC7N,EAAKvD,IAAMuD,EAAKoO,eAElBR,EAASnR,GAAKuD,EAAKvD,GACnBmR,EAASQ,aAAepO,EAAKoO,cAE/B/Q,EAAUqQ,OAAOjO,KAAKmO,KAGxBvB,EAAS9J,QAAQlF,EAAUqQ,WAE5BrB,EAAStK,QAELsK,EAAS3J,SAUlBrF,EAAUiN,kBAAoB,SAASpF,EAAMW,GAC3C,IACI3C,EAAa,GASjB,OANA7F,EAAUiM,QAAUjM,EAAUiJ,OAAO2B,gBACrC5K,EAAUL,SAAS,WACbK,EAAUiM,SAAWjM,EAAUiJ,OAAO6B,SACxC9K,EAAUiM,QAAUjM,EAAUiJ,OAAO4B,UACtC7K,EAAUiJ,OAAO8B,YAEbvC,EAAoBvF,KAAK,SAASN,GACvC,OAAO3C,EAAUL,SAAS,WACxB,IAAIqR,EAAS5P,EAAE6P,UAAUtO,EAAKqO,OAAQ,eAmCtC,OAlCEA,EAAO3O,OAAOjB,EAAE0C,QAAQkN,EAAQ,YAAa,EAAG,OAChDA,EAAO3O,OAAOjB,EAAE0C,QAAQkN,EAAQ,UAAW,EAAG,MAC9CA,EAAO3O,OAAOjB,EAAE0C,QAAQkN,EAAQ,mBAAoB,EAAG,gBAI7C,UAARnJ,GACFzG,EAAE0B,QAAQH,EAAKkF,GAAO,SAASqJ,EAAW1E,GACxCpL,EAAE0B,QAAQoO,EAAUN,KAAM,SAASO,EAAS7E,GAC1ClL,EAAE0B,QAAQqO,EAAQT,OAAQ,SAAShB,EAAexN,GAChD,IAA+C4D,EAC/CA,EAAY,IAAI9F,EADLoB,EAAEuO,UAAUqB,EAAQtB,IAE/ByB,EAAQT,OAAOxO,GAAK4D,QAI1BD,EAAalD,EAAKkF,IAEH,SAARA,GACPzG,EAAEqP,OAAO9N,EAAKkF,GAAO,SAAShC,EAAY6J,EAAexN,GACvD,IAA+C4D,EAG/C,OAFAA,EAAY,IAAI9F,EADLoB,EAAEuO,UAAUqB,EAAQtB,IAE/B7J,EAAWzD,KAAK0D,GACTD,GACNA,GAGL7F,EAAUJ,KAAKkF,MAAM,WAAa+C,EAAO,WAAahC,EAAWwF,OAAS,KAG1ErL,EAAU,IAAM6H,GAAQhC,EAExB7F,EAAUiM,QAAUjM,EAAUiJ,OAAO6B,OAE9BjF,OASb7F,EAAUoR,YAAc,WACtBnS,KAAK8K,OAAOsH,eAAiB,KAC7BpS,KAAK8K,OAAOjE,UAAY,KACxB7G,KAAK8K,OAAOuH,UAAY,KACxBrS,KAAK8K,OAAOwH,QAAU,MAUxBvR,EAAUwR,WAAa,SAASC,EAAY7J,GAC1C,IAAImG,EAAM2D,EAIV,OAFA3D,EAAO0D,EAAWE,UAAU,EAAE,IAAIC,MAAM,KAEpChK,GAAWA,EAAQiK,QACd,IAAIxF,KAAKlC,SAAS4D,EAAK,IAAK5D,SAAS4D,EAAK,IAAM,EAAG5D,SAAS4D,EAAK,MAE1E2D,EAAOD,EAAWE,UAAU,GAAG,IAAIC,MAAM,KAElC,IAAIvF,KAAKlC,SAAS4D,EAAK,IAAK5D,SAAS4D,EAAK,IAAM,EAAG5D,SAAS4D,EAAK,IACxD5D,SAASuH,EAAK,IAAKvH,SAASuH,EAAK,IAAK,EAAG,KAS3D1R,EAAUsG,UAAUpH,KAAO,SAASyD,GAsDlC,GAnDA1D,KAAK6S,WAAa,GAClB7S,KAAK8S,OAAS,GACd9S,KAAK+S,MAAQ,CAAEC,OAAQ,UAAWC,SAAU,EAAGC,KAAM,UAAWC,UAAW,SAAUC,SAAU,SAC/FpT,KAAKmG,OAAS,gBACdnG,KAAKqT,MAAQ,GACbpS,QAAQC,OAAOlB,KAAM0D,GAEC,UAAlB1D,KAAK6G,UACP7G,KAAK4I,KAAO,cACa,SAAlB5I,KAAK6G,YACZ7G,KAAK4I,KAAO,QAEV5I,KAAKiP,UACHhO,QAAQqS,SAAStT,KAAKiP,WAExBjP,KAAK4Q,MAAQ7P,EAAUwR,WAAWvS,KAAKiP,WAGvCjP,KAAK4Q,MAAQ5Q,KAAKiP,UAEA,eAAbjP,KAAK4I,OACZ5I,KAAK4Q,MAAQ,IAAIxD,KACjBpN,KAAK4Q,MAAM2C,WAAkD,GAAvCC,KAAKC,MAAMzT,KAAK4Q,MAAM8C,aAAa,MAGvD1T,KAAKkP,SACPlP,KAAK2T,IAAM5S,EAAUwR,WAAWvS,KAAKkP,SACrClP,KAAKqT,MAAQrT,KAAK4Q,MAAMgD,UAAU5T,KAAK2T,MAEnB,eAAb3T,KAAK4I,MACZ5I,KAAK6T,SAAS7T,KAAKqT,OAGjBrT,KAAK8T,UACP9T,KAAK+T,IAAMhT,EAAUwR,WAAWvS,KAAK8T,UAEnC9T,KAAKgU,cACPhU,KAAKiU,UAAYlT,EAAUwR,WAAWvS,KAAKgU,eACvB,QAAbhU,KAAK4I,OACZ5I,KAAKiU,UAAY,IAAI7G,MAEnBpN,KAAKkU,aAGPlU,KAAK6S,WAAa1Q,EAAE6P,UAAU7P,EAAEgC,OAAOnE,KAAKkU,WAAY,SAAShU,GAC/D,OAAOa,EAAUK,aAAaa,SAASsJ,6BAA6BrL,KAClE,oBAINF,KAAKmU,aAAelT,QAAQ6F,UAAUpD,EAAKoP,QACvC9S,KAAK8S,OAAOnB,KAAM,CACpB,IAAIyC,EAAYjS,EAAEC,KAAKpC,KAAK8S,OAAOnB,KAAM,SAAS3O,GAChD,OAAO/B,QAAQ6F,UAAU9D,EAAEqR,cAEzBD,IAC2B,UAAzBpU,KAAK8S,OAAOwB,YACdtU,KAAK8S,OAAOrF,KAAO,CAAE8G,OAAO,IAC9BvU,KAAK8S,OAAOvF,MAAQ,CAClB3E,KAAM,QACNyL,WAAYD,EAAUC,WAAWG,WACjCnH,IAAK+G,EAAU/G,WAKnBrN,KAAK8S,OAAOnB,KAAO,GAuCrB,GArCI3R,KAAK8S,OAAO2B,OACdzU,KAAK8S,OAAOwB,UAAY,SACxBnS,EAAE0B,QAAQ7D,KAAK8S,OAAO2B,MAAO,SAASC,EAAOzR,EAAG0R,GAC1C1T,QAAQqS,SAASoB,KAEnBC,EAAO1R,GAAKlC,EAAUwR,WAAWmC,OAG9BzT,QAAQ6C,YAAY9D,KAAK8S,OAAOwB,aACvCtU,KAAK8S,OAAOwB,UAAY,SACtBrT,QAAQ6C,YAAY9D,KAAK8S,OAAO8B,YAClC5U,KAAK8S,OAAO8B,SAAW,GACrB3T,QAAQ6C,YAAY9D,KAAK8S,OAAO+B,WAElC7U,KAAK8S,OAAO+B,UAAY,GACc,EAA/B7U,KAAK8S,OAAO+B,UAAUzI,SAC7BpM,KAAK8S,OAAOvF,MAAQ,CAAE3E,KAAM,eAC1B3H,QAAQ6C,YAAY9D,KAAK8S,OAAOvF,SAClCvN,KAAK8S,OAAOvF,MAAQ,IAClBtM,QAAQ6C,YAAY9D,KAAK8S,OAAOvF,MAAM8G,aACxCpT,QAAQC,OAAOlB,KAAK8S,OAAOvF,MAAO,CAAE8G,WAAY,IAAKhH,IAAK,OACxDpM,QAAQ6C,YAAY9D,KAAK8S,OAAOgC,UAElC9U,KAAK8S,OAAOgC,OAAS,IACnB7T,QAAQ6C,YAAY9D,KAAK8S,OAAOrF,QAClCzN,KAAK8S,OAAOrF,KAAO,IACjBzN,KAAK8S,OAAO9G,MACdhM,KAAK8S,OAAOa,IAAM,QACX3T,KAAK8S,OAAOiC,OACnB/U,KAAK8S,OAAOa,IAAM,QACd1S,QAAQqS,SAAStT,KAAK8S,OAAOiC,SAC/B/U,KAAK8S,OAAOiC,MAAQhU,EAAUwR,WAAWvS,KAAK8S,OAAOiC,MAAO,CAAEnC,SAAS,MAGzE5S,KAAK8S,OAAOa,IAAM,QACpB3T,KAAKgV,iBAAmBhV,KAAKiV,kBAEzBjV,KAAK0J,MAAO,CAEd,IAAId,EAAqB,eAAb5I,KAAK4I,KAAwB,SAAW,QAGpD5I,KAAKkV,eAAiBnU,EAAUK,aAAaa,SAAS,eAAiB2G,EAAO,yBAAyBoH,cAGvG,IACImF,EAAQ,uBAAuBC,KAAKrU,EAAUK,aAAaa,SAASoT,6BACpEF,IACFnV,KAAKsV,WAAY,EACjBtV,KAAK+S,MAAME,SAAW/H,SAASiK,EAAM,IACrCnV,KAAK+S,MAAMG,KALD,CAAEqC,EAAG,UAAWC,EAAG,QAASC,EAAG,OAAQC,EAAG,SAK5BP,EAAM,KAIhCnV,KAAK2V,6BAA+B5U,EAAUK,aAAaa,SAAS2T,2CAE7D3U,QAAQ6C,YAAYJ,EAAK4R,aAChCtV,KAAKsV,UAAYrU,QAAQ6F,UAAUpD,EAAKqP,QAI1C/S,KAAK6V,oBAAsB7V,KAAK+G,IAM5B/G,KAAK8V,WACP3T,EAAE0B,QAAQ7D,KAAK8V,UAAW,SAASC,GACjCA,EAASC,MAAQjV,EAAUqJ,UAAU2L,EAASE,MAAO,MAKzDjW,KAAKkW,iBAELlW,KAAKmM,UAAW,GAUlBpL,EAAUsG,UAAU8O,cAAgB,SAASnU,GAC3C,IAAkBoE,EAAdxC,EAAQ5D,KACRgC,GAAYA,EAASY,eACvBwD,EAAUrF,EAAUmJ,MAAM+C,QAAQjL,EAASyC,OAAOT,KAAK,SAASoS,GAC9D,IAAI3R,EAAQ2R,EAAQ,GACpBxS,EAAMyS,UAAY,CAChBrR,IAAKP,EAAMO,IACX9E,KAAMuE,EAAM6R,GACZL,MAAOxR,EAAM8R,YAKjBvW,KAAKqW,UAAY,CACfrR,IAAKjE,EAAUkJ,UAAU9I,WAAW,SACpCjB,KAAMa,EAAUkJ,UAAU9I,WAAW,kBACrC8U,MAAOlV,EAAUkJ,UAAU9I,WAAW,UAExCiF,EAAUrF,EAAUN,GAAGmH,QAGzBxB,EAAQpC,KAAK,WACXJ,EAAM4S,uBAAuB5S,EAAMyS,cAUvCtV,EAAUsG,UAAU4N,gBAAkB,WASpC,OARQhU,QAAQ6C,YAAY9D,KAAKkO,eAC7BjN,QAAQ6F,UAAU9G,KAAK8S,UACC,EAAvB9S,KAAK8S,OAAO8B,UACZ3T,QAAQ6F,UAAU9G,KAAK8S,OAAOnB,OAAmC,EAA1B3R,KAAK8S,OAAOnB,KAAKvF,QACxDnL,QAAQ6F,UAAU9G,KAAK8S,OAAO+B,YAA6C,EAA/B7U,KAAK8S,OAAO+B,UAAUzI,QAClEnL,QAAQ6F,UAAU9G,KAAK8S,OAAOgC,SAAuC,EAA5B9U,KAAK8S,OAAOgC,OAAO1I,QAC5DnL,QAAQ6F,UAAU9G,KAAK8S,OAAOvF,QAAUtM,QAAQ6F,UAAU9G,KAAK8S,OAAOvF,MAAM3E,OAC5E3H,QAAQ6F,UAAU9G,KAAK8S,OAAO2B,QAAqC,EAA3BzU,KAAK8S,OAAO2B,MAAMrI,SAUjErL,EAAUsG,UAAU1B,WAAa,WAC/B,OAAS3F,KAAKkO,eAAiBlO,KAAKyW,YAStC1V,EAAUsG,UAAUqP,qBAAuB,WACzC,OAAQ1W,KAAKkO,eAAiBlO,KAAKyW,YASrC1V,EAAUsG,UAAUsP,aAAe,WACjC,OAAS3W,KAAKkO,cAAgBlO,KAAK4W,aASrC7V,EAAUsG,UAAUwP,uBAAyB,WAC3C,OAAQ7W,KAAKkO,cAAgBlO,KAAK4W,aAUpC7V,EAAUsG,UAAUyP,oBAAsB,WACxC,MAAqB,QAAb9W,KAAK4I,MACkB,EAAvB5I,KAAK+W,iBACU,aAAf/W,KAAKmG,QAUfpF,EAAUsG,UAAU2P,sBAAwB,WAC1C,MAAqB,QAAbhX,KAAK4I,MACU,iBAAf5I,KAAKmG,QACU,aAAfnG,KAAKmG,QASfpF,EAAUsG,UAAU4P,gBAAkB,WACpC,IAAkBC,EAAdtT,EAAQ5D,KACZ,MAAiB,QAAbA,KAAK4I,MACPsO,EAAMnW,EAAUK,aAAa+V,sBAC7BnX,KAAK+W,gBAAkB,IACvB/W,KAAKiU,UAAY,IAAI7G,KACrBpN,KAAKiU,UAAUmD,YAAcrW,EAAUK,aAAaa,SAASoV,mBAC7DrX,KAAKmG,OAAS,YACdnG,KAAKsX,uBAAyBJ,EAAIK,WAAWvX,KAAKiU,WAClDjU,KAAKwX,uBAAyBN,EAAIO,WAAWzX,KAAKiU,WAC3CjU,KAAKiI,QAAQyP,MAAM,WACxB9T,EAAMwE,YAIDrH,EAAUN,GAAGgF,OAAO,wCAU/B1E,EAAUsG,UAAUsQ,eAAiB,SAAStK,EAAKyD,EAAM8G,GAIvD,OAHS3W,QAAQ6F,UAAU9G,KAAK6X,SAASxK,KAChCpM,QAAQ6F,UAAU9G,KAAK6X,SAASxK,GAAKyD,KACA,GAArC9Q,KAAK6X,SAASxK,GAAKyD,GAAM8G,IAUpC7W,EAAUsG,UAAUyQ,uBAAyB,WAC3C,IAAIlU,EAAQ5D,KAAM6X,EAAW,GAE7B,GAAI7X,KAAK4Q,OAAS5Q,KAAK2T,IAAK,CAC1B,IAAIoE,EAAe,IAAI3K,KAAKpN,KAAK4Q,MAAMtB,WACnC0I,EAAa,IAAI5K,KAAKpN,KAAK2T,IAAIrE,WAC/B2I,EAAe/M,SAAS6M,EAAarE,aAAa,GAAK,IACvDwE,EAAahN,SAAS8M,EAAWtE,aAAa,GAAK,IA8BvD,OA7BAqE,EAAaxE,WAAW,GAAG0E,GAC3BD,EAAWzE,WAAW,GAAG2E,GAEzB/V,EAAE0B,QAAQkU,EAAaI,SAASH,GAAa,SAASlJ,EAAMsJ,GAC1D,IAEIC,EAFAC,EAAaxJ,EAAKxB,UAClBiL,EAASzJ,EAAKoB,eAElB,GAAIqI,GAAU3U,EAAMgN,MAAMV,eAIxB,IAHAmI,EAAUvJ,EAAK0J,WAAWhE,WAC1BqD,EAASU,GAAU,GACnBV,EAASU,GAAQF,GAAW,GACN,EAAfJ,GACLJ,EAASU,GAAQF,GAASlV,KAAK,GAC/B8U,SAIFnJ,EAAOA,EAAK2J,aACZZ,EAASU,GAAU,GAErB,KAAOzJ,EAAKQ,UAAY1L,EAAM+P,IAAIrE,WAC3BR,EAAKxB,WAAagL,GACvBD,EAAUvJ,EAAK0J,WAAWhE,WACtBvT,QAAQ6C,YAAY+T,EAASU,GAAQF,MACvCR,EAASU,GAAQF,GAAW,IAC9BR,EAASU,GAAQF,GAASlV,KAAK,GAC/B2L,EAAK4J,WAAW,MAGbb,IASX9W,EAAUsG,UAAU6O,eAAiB,WACnC,IAAItS,EAAQ5D,KAEZA,KAAK6X,SAAW7X,KAAK8X,yBAEjB9X,KAAK8V,YACH9V,KAAKqW,WACPrW,KAAKwW,uBAAuBxW,KAAKqW,WACnClU,EAAE0B,QAAQ7D,KAAK8V,UAAW,SAASC,GACjCnS,EAAM4S,uBAAuBT,OAWnChV,EAAUsG,UAAUwM,SAAW,SAASR,GACtCrT,KAAKqT,MAAQA,EACbrT,KAAK2T,IAAM,IAAIvG,KAAKpN,KAAK4Q,MAAMtB,WAC/BtP,KAAK2T,IAAIJ,WAAgD,GAArCC,KAAKC,MAAMzT,KAAK2T,IAAID,aAAa,KACrD1T,KAAK2T,IAAI+E,WAAW1Y,KAAKqT,QAS3BtS,EAAUsG,UAAUmP,uBAAyB,SAAST,GACpD,IAAI4C,EAAU3T,EAAK6I,EAAQ8D,EAEvBoE,EAAS/Q,MACXA,EAAM+Q,EAAS/Q,IACX+Q,EAAS6C,SACX5T,GAAO,IAAM+Q,EAAS6C,QACxB/K,EACE,CACEgL,KAAM7Y,KAAK4Q,MAAMV,eACjB4I,KAAM9Y,KAAK2T,IAAIzD,gBAGf6F,EAASgD,cAGXJ,EAAW5X,EAAUV,WAAW6E,eAChC2I,EAAO7I,IAAMA,GAKb2T,EAAW5X,EAAUV,WAAW6E,aAAaF,GAG/C2M,EAAOxP,EAAE2C,IAAI9E,KAAK4Q,MAAMuH,SAASnY,KAAK2T,KAAM,SAAStG,GAAO,OAAOA,EAAI6C,iBAEnEjP,QAAQ6C,YAAYiS,EAAS8B,YAC/B9B,EAAS8B,SAAW,IAGtBc,EAAS5U,MAAM,eAAgB,WAAY8J,GAAQ7J,KAAK,SAASN,GAC/DvB,EAAE0B,QAAQ8N,EAAM,SAAStE,GACvB,IAAIyD,EAEA7P,QAAQ6C,YAAYiS,EAAS8B,SAASxK,MACxC0I,EAAS8B,SAASxK,GAAO,IAEvBpM,QAAQ6C,YAAYJ,EAAK2J,MAC3B3J,EAAK2J,GAAO,IAEd,IAAK,IAAIpK,EAAI,EAAGA,GAAK,GAAIA,IACvB6N,EAAO7N,EAAEuR,WACL9Q,EAAK2J,GAAKyD,GACZiF,EAAS8B,SAASxK,GAAKyD,GAAQ,CAC7BpN,EAAK2J,GAAKyD,GAAM,GAChBpN,EAAK2J,GAAKyD,GAAM,IAChBpN,EAAK2J,GAAKyD,GAAM,IAChBpN,EAAK2J,GAAKyD,GAAM,KAGlBiF,EAAS8B,SAASxK,GAAKyD,GAAQ,CAAC,EAAG,EAAG,EAAG,SAcrD/P,EAAUsG,UAAUS,aAAe,SAASC,GAG1C,OAFI9G,QAAQ6C,YAAYiE,KACtBA,EAAO,MACFA,EAAO,WAAa/H,KAAK6V,qBAAuB7V,KAAKgZ,UAAYhZ,KAAK+G,MAS/EhG,EAAUsG,UAAU4R,YAAc,SAASC,EAAMvQ,GAC/C,IAAkBoN,EAAUvT,EAAxBoB,EAAQ5D,KACRkZ,MACGlZ,KAAK8V,WAAcnN,GAAWA,EAAQwQ,oBAEzCnZ,KAAKmW,cAAcxN,EAASA,EAAQwQ,uBAAoBnT,GAEtDkT,EAAKE,QAAQ,CAACC,YAAY,KAE5B7W,EAAOzB,EAAUoJ,MAAMhB,MAAM+P,EAAKI,UAAWJ,EAAKK,SAC7C5R,MAAM3D,KAAK,SAASwV,GACvBrX,EAAE0B,QAAQrB,EAAKiX,KAAM,SAASC,GAC5B3D,EAAW,CACT7V,KAAMwZ,EAAIC,KACV1D,MAAOyD,EAAIE,kBACXC,KAAM,kBACNC,SAAU,eACV9U,IAAK0U,EAAIK,MACTC,YAAa,UAEV7X,EAAEC,KAAKwB,EAAMkS,UAAW,SAAS9S,GACpC,OAAOA,EAAEiT,OAASF,EAASE,UAG3BF,EAASC,MAAQjV,EAAUqJ,UAAU2L,EAASE,MAAO,IACjDrS,EAAMkS,UACRlS,EAAMkS,UAAU3S,KAAK4S,GAErBnS,EAAMkS,UAAY,CAACC,GACrBnS,EAAM4S,uBAAuBT,SAOnCA,EAAW,CACT/Q,IAAKkU,EAAKa,MACVnB,OAAQM,EAAKe,SACblB,aAAcG,EAAKgB,aACnBha,KAAMgZ,EAAKS,KACX1D,MAAOiD,EAAKU,kBACZC,KAAM,kBACNC,SAAU,eACVE,YAAad,EAAKc,aAEf7X,EAAEC,KAAKpC,KAAK8V,UAAW,SAAS9S,GACnC,OAAOA,EAAEiT,OAASF,EAASE,UAE3BF,EAASC,MAAQjV,EAAUqJ,UAAU2L,EAASE,MAAO,IACjDjW,KAAK8V,UACP9V,KAAK8V,UAAU3S,KAAK4S,GAEpB/V,KAAK8V,UAAY,CAACC,GACpB/V,KAAKwW,uBAAuBT,OAapChV,EAAUsG,UAAU8S,YAAc,SAASjB,GACzC,IAAInD,EAAW5T,EAAEC,KAAKpC,KAAK8V,UAAW,SAASC,GAC7C,OAAO5T,EAAEC,KAAK8W,EAAKkB,OAAQ,SAASnE,GAClC,OAAOA,EAAMvU,OAASqU,EAASE,UAGnC,OAAOhV,QAAQ6F,UAAUiP,IAS3BhV,EAAUsG,UAAUgT,eAAiB,SAAStE,GAC5C,IAAIqC,EAAQjW,EAAEY,UAAU/C,KAAK8V,UAAW,SAASwE,GAC/C,OAAOA,EAAgBrE,OAASF,EAASE,QAE3CjW,KAAK8V,UAAU1S,OAAOgV,EAAO,IAS/BrX,EAAUsG,UAAUkT,0BAA4B,WAC9C,MAA4B,SAArBva,KAAK+S,MAAMC,SACfhT,KAAKyW,YACNzW,KAAK8V,WAAqC,EAAxB9V,KAAK8V,UAAU1J,QAUrCrL,EAAUsG,UAAUmT,aAAe,SAASC,GAC1C,GAAIxZ,QAAQ6C,YAAY9D,KAAK0a,YAC3B1a,KAAK0a,WAAa,CAAC,CAAChZ,MAAO+Y,QAExB,CACH,IAAK,IAAIxX,EAAI,EAAGA,EAAIjD,KAAK0a,WAAWtO,QAC9BpM,KAAK0a,WAAWzX,GAAGvB,OAAS+Y,EADUxX,KAKxCA,GAAKjD,KAAK0a,WAAWtO,QACvBpM,KAAK0a,WAAWvX,KAAK,CAACzB,MAAO+Y,IAEjC,OAAOza,KAAK0a,WAAWtO,OAAS,GASlCrL,EAAUsG,UAAUsT,gBAAkB,SAASvC,IAChC,EAATA,GAAcpY,KAAK0a,WAAWtO,OAASgM,GACzCpY,KAAK0a,WAAWtX,OAAOgV,EAAO,IASlCrX,EAAUsG,UAAUuT,YAAc,WAChC5a,KAAK+T,IAAM,IAAI3G,KACfpN,KAAK+T,IAAIR,WAAgD,GAArCC,KAAKC,MAAMzT,KAAK+T,IAAIL,aAAa,KACrD1T,KAAK8T,QAAU9T,KAAK+T,IAAI8G,eAQ1B9Z,EAAUsG,UAAUyT,eAAiB,kBAC5B9a,KAAK+T,WACL/T,KAAK8T,SAQd/S,EAAUsG,UAAU0T,cAAgB,WAClC/a,KAAK4Q,MAAQ,IAAIxD,KACjBpN,KAAK4Q,MAAM2C,WAAkD,GAAvCC,KAAKC,MAAMzT,KAAK4Q,MAAM8C,aAAa,MAQ3D3S,EAAUsG,UAAU2T,iBAAmB,kBAC9Bhb,KAAK4Q,aACL5Q,KAAKiP,WAQdlO,EAAUsG,UAAU4T,mBAAqB,WACvC,IAAI9N,EAAM,IAAIC,KACdD,EAAIoG,WAA2C,GAAhCC,KAAKC,MAAMtG,EAAIuG,aAAa,KAEvCzS,QAAQ6C,YAAY9D,KAAK8S,OAAO2B,SAClCzU,KAAK8S,OAAS,CAAEwB,UAAW,SAAUG,MAAO,KAC9CzU,KAAK8S,OAAO2B,MAAMtR,KAAKgK,IAQzBpM,EAAUsG,UAAU6T,sBAAwB,SAAS9C,IACtC,EAATA,GAAcpY,KAAK8S,QAAU9S,KAAK8S,OAAO2B,OAASzU,KAAK8S,OAAO2B,MAAMrI,OAASgM,GAC/EpY,KAAK8S,OAAO2B,MAAMrR,OAAOgV,EAAO,IASpCrX,EAAUsG,UAAUe,OAAS,WAC3B,IAAIxE,EAAQ5D,KACZiB,QAAQ4C,QAAQ7D,KAAM,SAAS0B,EAAO2G,GACzB,eAAPA,GAAkC,KAAVA,EAAI,WACvBzE,EAAMyE,KAGjBrI,KAAKC,KAAKD,KAAKyH,aACfzH,KAAKyH,YAAczH,KAAK0H,SAS1B3G,EAAUsG,UAAU8T,OAAS,WAC3B,IAAkBzX,EAAdE,EAAQ5D,KAAYiF,EAAO,CAACjF,KAAK+G,IAAKoH,mBAAmBnO,KAAKG,KAWlE,OATIH,KAAKkO,cACPjJ,EAAK9B,KAAKnD,KAAKkO,cAEjBxK,EAAO,CACL0X,MAAOpb,KAAKob,MACZC,YAAarb,KAAKqb,YAClBtI,MAAO/S,KAAKsV,UAAWtV,KAAK+S,MAAQ,IAG/BhS,EAAUV,WAAWiI,KAAKrD,EAAKmJ,KAAK,KAAM1K,EAAM,CAAEsP,OAAQ,oBAC9DhP,KAAK,SAASN,GAGb,OADAE,EAAM6D,YAAc7D,EAAM8D,QACnBhE,KAUb3C,EAAUsG,UAAUiU,QAAU,SAASzN,GACrC,IAAI5I,EAAO,CAACjF,KAAK+G,IAAKoH,mBAAmBnO,KAAKG,KAE9C,OAAIgC,EAAEoZ,MAAMpZ,EAAEqZ,OAAO3N,GAAS,SAAS4N,GAAK,OAAa,IAANA,IAE1C1a,EAAUN,GAAGmH,QAElB5H,KAAKkO,cACPjJ,EAAK9B,KAAKnD,KAAKkO,cAEjBnN,EAAUJ,KAAKkF,MAAM,UAAYZ,EAAKmJ,KAAK,KAAO,IAAMtI,KAAKC,UAAU8H,IAEhE9M,EAAUV,WAAWiI,KAAKrD,EAAKmJ,KAAK,KAAMP,EAAQ,CAAEmF,OAAQ,aASrEjS,EAAUsG,UAAUY,MAAQ,SAASyT,GACnC,IAAkB/S,EAAS1D,EAAM4B,EAAiBqQ,EAA9CtT,EAAQ5D,KAqFZ,OAnFA6G,EAAY7G,KAAK0H,QACjBwP,EAAMnW,EAAUK,aAAa+V,sBAG7BtQ,EAAUoI,UAAYpI,EAAU+J,MAAQ/J,EAAU+J,MAAM+K,OAAOzE,EAAK,YAAc,GAClFrQ,EAAU+U,UAAY/U,EAAU+J,MAAQ/J,EAAU+J,MAAM+K,OAAOzE,EAAK,SAAW,GAC/ErQ,EAAUqI,QAAUrI,EAAU8M,IAAM9M,EAAU8M,IAAIgI,OAAOzE,EAAK,YAAc,GAC5ErQ,EAAUgV,QAAUhV,EAAU8M,IAAM9M,EAAU8M,IAAIgI,OAAOzE,EAAK,SAAW,GACzErQ,EAAUiN,QAAUjN,EAAUkN,IAAMlN,EAAUkN,IAAI4H,OAAOzE,EAAK,YAAc,GAC5ErQ,EAAUiV,QAAUjV,EAAUkN,IAAMlN,EAAUkN,IAAI4H,OAAOzE,EAAK,SAAW,GACzErQ,EAAUmN,cAAgBnN,EAAUoN,UAAYpN,EAAUoN,UAAU0H,OAAOzE,EAAK,YAAc,GAG1FlX,KAAKiV,kBACsB,WAAzBjV,KAAK8S,OAAOwB,WAA0BtU,KAAK8S,OAAOvF,MAAM3E,MAAkC,SAA1B5I,KAAK8S,OAAOvF,MAAM3E,MAA4C,YAAzB5I,KAAK8S,OAAOvF,MAAMF,KAC9F,UAAzBrN,KAAK8S,OAAOwB,WAAyBtU,KAAK8S,OAAOrF,KAAK8G,cAEjD1N,EAAUiM,OAAO+B,UACxBhO,EAAUiM,OAAOnB,KAAO,CAAC,CAAEtE,IAAKrN,KAAK8S,OAAOvF,MAAMF,IAAKgH,WAAYrU,KAAK8S,OAAOvF,MAAM8G,WAAWG,cAE/D,WAAzBxU,KAAK8S,OAAOwB,WAAmD,UAAzBtU,KAAK8S,OAAOwB,YACnDtU,KAAK8S,OAAOvF,MAAM3E,KAMO,UAAzB5I,KAAK8S,OAAOwB,WAAyBtU,KAAK8S,OAAO2B,OACxDtS,EAAE0B,QAAQgD,EAAUiM,OAAO2B,MAAO,SAASC,EAAOzR,EAAG0R,GACnDA,EAAO1R,GAAK,CACV6L,KAAM4F,EAAMiH,OAAOzE,EAAK,YACxBzE,KAAMiC,EAAMiH,OAAOzE,EAAK,oBARrBrQ,EAAUiM,OAAOnB,KACK,YAAzB3R,KAAK8S,OAAOvF,MAAMF,MACpBxG,EAAUiM,OAAO+B,UAAY,CAAC7U,KAAK8S,OAAOvF,MAAM8G,cAW7CrU,KAAK8S,OAAOwB,WAAsC,SAAzBtU,KAAK8S,OAAOwB,YAC5CzN,EAAUiM,OAAS,CAAEwB,UAAWtU,KAAK8S,OAAOwB,YAE1CzN,EAAUoI,WAAajP,KAAK8S,OAAOwB,WAAsC,SAAzBtU,KAAK8S,OAAOwB,UACvC,SAAnBtU,KAAK8S,OAAOa,KAAkB3T,KAAK8S,OAAOiC,MAC5ClO,EAAUiM,OAAOiC,MAAQ/U,KAAK8S,OAAOiC,MAAMgH,oBAAoB,KACrC,SAAnB/b,KAAK8S,OAAOa,KAAkB3T,KAAK8S,OAAO9G,MACjDnF,EAAUiM,OAAO9G,MAAQhM,KAAK8S,OAAO9G,cAE9BnF,EAAUiM,OAAOiC,aACjBlO,EAAUiM,OAAO9G,cAInBnF,EAAUiM,OAIA,iBAAf9S,KAAKmG,cACAU,EAAUV,OACK,aAAfnG,KAAKmG,eACLU,EAAUmN,eAGdnN,EAAUoI,WAAapI,EAAUiN,UAAY9T,KAAKsV,WACjDtV,KAAK+S,MAAMC,QAA+B,SAArBhT,KAAK+S,MAAMC,QAC9BhT,KAAK8V,WAAqC,EAAxB9V,KAAK8V,UAAU1J,SAErCvF,EAAUkM,MAAM+C,UAAY,EAC5BjP,EAAUkM,MAAMsD,UAAY,GAI9BxP,EAAUkM,MAAQ,GAIpB9N,EAAO,CAACjF,KAAK+G,IAAKoH,mBAAmBnO,KAAKG,KAEtCH,KAAK0J,QACPf,EAAU,CAAEqK,OAAQ,SAAWhT,KAAK4I,KAAKgF,eAEvC5N,KAAKkO,cACPjJ,EAAK9B,KAAKnD,KAAKkO,cAEjBjN,QAAQC,OAAO2F,EAAW6U,GAEnB3a,EAAUV,WAAWiI,KAAKrD,EAAKmJ,KAAK,KAAMvH,EAAW8B,GACzD3E,KAAK,SAASN,GAGb,OADAE,EAAM6D,YAAc7D,EAAM8D,QACnBhE,KAUb3C,EAAUsG,UAAUc,OAAS,SAAS6T,GACpC,IAAkB/W,EAAO,CAACjF,KAAK+G,IAAKoH,mBAAmBnO,KAAKG,KAK5D,OAHI6b,GAAkBhc,KAAKkO,cACzBjJ,EAAK9B,KAAKnD,KAAKkO,cAEVnN,EAAUV,WAAW8H,OAAOlD,EAAKmJ,KAAK,OAS/CrN,EAAUsG,UAAU9G,QAAU,SAASgJ,GACrC,IAAI3F,EAAQ5D,KAGZA,KAAKic,qBAAuB1S,EAG5BvJ,KAAKic,qBAAqBjY,KAAK,SAASN,GACtCE,EAAM3D,KAAKyD,GAEXE,EAAM6D,YAAc7D,EAAM8D,SACzB,SAAShE,GACVzC,QAAQC,OAAO0C,EAAOF,GACtBE,EAAMwF,SAAU,EAChBrI,EAAUJ,KAAKub,MAAMtY,EAAMsY,UAU/Bnb,EAAUsG,UAAUK,MAAQ,WAC1B,IAAIb,EAAY,GAShB,OARA5F,QAAQ4C,QAAQ7D,KAAM,SAAS0B,EAAO2G,GACzB,eAAPA,GACQ,aAAPA,GAAgC,KAAVA,EAAI,IACpB,UAAPA,IACFxB,EAAUwB,GAAOpH,QAAQqI,KAAK5H,MAI3BmF,GAST9F,EAAUsG,UAAU8U,kBAAoB,WACtC,IAAIC,EAAkB,KAItB,OAHIpc,KAAK8S,SACPsJ,EAAkB5V,EAAE,UAAYxG,KAAK8S,OAAOwB,UAAU+H,gBAEjDD,GASTrb,EAAUsG,UAAUiV,iBAAmB,WACrC,IAAIjU,EAAK+T,EAAkB,KAc3B,OAbIpc,KAAK+S,QACP1K,EAAM,CAAC,WAAYrI,KAAK+S,MAAME,UACJ,EAAtBjT,KAAK+S,MAAME,UACb5K,EAAIlF,KAAKnD,KAAK+S,MAAMG,KAAKmJ,cAAerc,KAAK+S,MAAMI,UAAUkJ,gBAC/DhU,EAAMA,EAAI+F,KAAK,SACfgO,EAAkB5V,EAAE6B,MAGlB+T,EAAkB,CAACpc,KAAK+S,MAAME,SACXzM,EAAE,YAAcxG,KAAK+S,MAAMG,KAAKmJ,eAChC7V,EAAE,YAAcxG,KAAK+S,MAAMI,UAAUkJ,gBAAgBjO,KAAK,OAG1EgO,GAUTrb,EAAUsG,UAAUkV,OAAS,SAASva,GACpC,OAAOjB,EAAUV,WAAWqF,KAAK1F,KAAK+G,IAAM,IAAMoH,mBAAmBnO,KAAKG,IAAK,OAAQ,CAACqc,YAAaxa,KAUvGjB,EAAUsG,UAAUoV,OAAS,SAASza,GACpC,OAAOjB,EAAUV,WAAWqF,KAAK1F,KAAK+G,IAAM,IAAMoH,mBAAmBnO,KAAKG,IAAK,OAAQ,CAACqc,YAAaxa,KAGvGjB,EAAUsG,UAAUmN,SAAW,WAC7B,MAAO,cAAgBxU,KAAKG,GAAK,KAl6CrC,GCAA,WAEE,aAMA,SAASuc,EAAmBC,EAAQhT,EAAYiT,EAAQC,EAAcC,EAAWhd,EAAUiB,EAAWD,EAAaic,GACjH,IAAeC,EAAXC,EAAKjd,KAA+Bkd,EAAU,GAoFlD,SAASC,EAAYC,EAAQC,GAC3B,IAAIvO,EAEqB,QAArB+N,EAAahO,KACfC,EAAOmO,EAAGK,aAAalO,YAAYtO,EAAYmB,SAASkN,oBAAoBI,QAAQ,EAAI8N,GAE5D,SAArBR,EAAahO,OACpBC,EAAOmO,EAAGK,cACL9N,QAAQ,GACbV,EAAKW,SAASX,EAAKtB,WAAa6P,IAGhCvO,EAAOmO,EAAGK,aAAa/N,QAAQ8N,GAGjCE,EAAWH,EAAQtO,GASrB,SAAS0O,EAAY1O,GACM,SAArB+N,EAAahO,MACfC,EAAKU,QAAQ,GACbV,EAAK2O,SAAS,IACd3O,EAAKsI,YAAc,SAES,QAArByF,EAAahO,MACpBC,EAAKO,QAAQP,EAAKM,YAAYtO,EAAYmB,SAASkN,oBAAoBG,WACvER,EAAKsI,YAAc5Q,EAAE,WAAWkX,QAAQ,KAAM,OAG9C5O,EAAKsI,YAAc,KAUvB,SAASuG,IAGP5c,EAAU6N,qBAAqBiO,EAAahO,KAAMgO,EAAaxP,IAAIuQ,UAAU5Z,KAAK,SAASN,GACzF,IAAIT,EAAG2M,EAAGf,EACV,IAAK5L,EAAI,EAAGA,EAAIS,EAAK0I,OAAQnJ,IAC3B4L,EAAOnL,EAAKT,GACRga,EAAG7M,MAAMnN,IACXd,EAAE0B,QAAQgL,EAAK0C,aAAc,SAASP,EAAQ3D,GAC5C4P,EAAG7M,MAAMnN,GAAGsO,aAAalE,GAAO2D,IAElC7O,EAAE0B,QAAQgL,EAAKmC,OAAQ,SAASA,EAAQ3D,GACtC4P,EAAG7M,MAAMnN,GAAG+N,OAAO3D,GAAO2D,KAI5BiM,EAAG7M,MAAMnN,GAAK4L,EAEZA,EAAK1O,KAGP8c,EAAG7M,MAAMnN,GAAGjB,SAAW,IAAIlC,EAAS,CAAEK,GAAI0O,EAAK1O,GAAID,KAAM2O,EAAKiD,gBAIlE,IAAKlC,EAAIqN,EAAG7M,MAAMhE,OAAanJ,GAAL2M,EAAQA,IAChCqN,EAAG7M,MAAMhN,OAAOwM,EAAG,KAKzB,SAAS2N,EAAWH,EAAQS,GAC1B,IAAI/O,EAAO+O,EAASA,EAAQ3N,eAAiBjP,QAAQ6c,QAAQV,EAAOW,eAAeC,KAAK,QACpFH,GACFL,EAAYK,GACdjB,EAAOqB,GAAG,iBAAkB,CAAE5Q,IAAKyB,IAIrC,SAASoP,EAAWd,EAAQvO,GAC1B+N,EAAOqB,GAAG,iBAAkB,CAAEpP,KAAMA,IAtKlC5N,QAAQ6C,YAAY4Y,EAAmByB,mBACzCzB,EAAmByB,iBAAkB,GAEvClB,EAAGK,aAAeT,EAAaxP,IAAIuQ,SACnCX,EAAGkB,gBAAkBzB,EAAmByB,gBACxClB,EAAGmB,cAoHH,WACE1B,EAAmByB,iBAAmBzB,EAAmByB,gBACzDlB,EAAGkB,gBAAkBzB,EAAmByB,iBArH1ClB,EAAG7M,MAAQ2M,EACXE,EAAGM,WAAaA,EAChBN,EAAGiB,WAAaA,EAGhBle,KAAKqe,QAAU,WAmBf,IAA0BtQ,GAAAA,EAlBPmP,GAmBZ/Z,KAAK2Z,EAAUwB,aAAa,CAC/BjW,IAAK7B,EAAE,gBACP+X,YAAa/X,EAAE,SACfgY,SAAUjB,EACVkB,KAAM,IAAIrR,QAEZW,EAAK5K,KAAK2Z,EAAUwB,aAAa,CAC/BjW,IAAK7B,EAAE,kBACP+X,YAAa/X,EAAE,OACfgY,SAAUN,EACVO,KAAM,SAER1Q,EAAK5K,KAAK2Z,EAAUwB,aAAa,CAC/BjW,IAAK7B,EAAE,mBACP+X,YAAa/X,EAAE,QACfgY,SAAUN,EACVO,KAAM,UAER1Q,EAAK5K,KAAK2Z,EAAUwB,aAAa,CAC/BjW,IAAK7B,EAAE,oBACP+X,YAAa/X,EAAE,SACfgY,SAAUN,EACVO,KAAM,WAER1Q,EAAK5K,KAAK2Z,EAAUwB,aAAa,CAC/BjW,IAAK7B,EAAE,6BACP+X,YAAa/X,EAAE,wBACfgY,SAAUN,EACVO,KAAM,oBAER1Q,EAAK5K,KAAK2Z,EAAUwB,aAAa,CAC/BjW,IAAK,OACLkW,YAAa/X,EAAE,iBACfgY,SAAUrB,EACVsB,MAAO,KAET1Q,EAAK5K,KAAK2Z,EAAUwB,aAAa,CAC/BjW,IAAK,QACLkW,YAAa/X,EAAE,gBACfgY,SAAUrB,EACVsB,KAAM,KAIRtc,EAAE0B,QAAQkK,EAAM,SAAS1F,GACvByU,EAAU4B,eAAerW,KA9D3BmV,EAAYP,EAAGK,cAGfN,EAA0BrT,EAAWgV,IAAI,iBAAkBhB,GAE3DhB,EAAOgC,IAAI,WAAY,WAErB3B,IAEA7a,EAAE0B,QAAQqZ,EAAS,SAAS7U,GAC1ByU,EAAU8B,iBAAiBvW,QA7BnCqU,EAAmBmC,QAAU,CAAC,SAAU,aAAc,SAAU,eAAgB,YAAa,WAAY,YAAa,cAAe,qBA+KrI5d,QACGO,OAAO,oBACPsd,WAAW,qBAAsBpC,GAxLtC,GCAA,WACE,aAMA,SAASqC,EAAuBpV,EAAYgT,EAAQlc,EAAIC,EAAUkc,EAAQoC,EAAWlC,EAAWmC,EAAOC,EAAQpe,EAAaqe,EAAkBrf,EAAUiB,EAAWqe,GACjK,IAA6BxW,EAAMyW,EAA/BpC,EAAKjd,KAAMkd,EAAU,GA6FzB,SAASoC,EAAoB1W,EAAMD,IAC7BA,GAAWA,EAAQ4W,QAAUtC,EAAGtO,eAAiB/F,KAC/C3H,QAAQ6C,YAAY/C,EAAU,IAAM6H,KACtC7H,EAAUkM,QAAQrE,GACpBqU,EAAGuC,qBACHvC,EAAGtO,cAAgB/F,EACnB7H,EAAU2N,iBAAiB9F,IAyB/B,SAAS6W,IACPxC,EAAGyC,KAAKnV,QAAS,EACjB0U,EAAM,UA2BR,SAASU,EAAcvC,EAAQvW,EAAW+B,GACxC,GAAI/B,EAAU+Y,SAAU,CACtB,IAAIxZ,EAAU3F,EAAGmH,OAGb3G,QAAQ6C,YAAY+C,EAAUoV,wBAEhC7V,GADAS,EAAY/G,EAAS6E,KAAKkC,EAAUE,KAAKiC,cAAcnC,EAAU1G,GAAI0G,EAAUqH,eAC3D+N,sBAGtB7V,EAAQpC,KAAK,WAGX,IAAI6b,EAAc,MAAQjX,EAAKgF,aAAe,eAC9CoR,EAAUc,KAAK,CACbC,OAAQ9e,QAAQ6c,QAAQkC,SAASC,MACjCC,YAAa9C,EACb+C,qBAAqB,EACrBC,eAAe,EACfP,YAAaA,EACbf,WAAY,sBACZuB,aAAc,SACdC,OAAQ,CACNC,eAAgB1Z,QAO1B,SAAS2Z,EAAapD,EAAQxU,EAAM6X,GAClC,IAAI5Z,EAEA4Z,GACF5Z,EAAY4Z,GACFvK,iBAGVrP,EAAY,IAAI9F,EAAU,CAAEgG,IAAKjH,EAASiC,mBAAoB6G,KAAMA,IAKtE,IAAIiX,EAAc,MAAQjX,EAAKgF,aAAe,iBAC9C,OAAOoR,EAAUc,KAAK,CACpBC,OAAQ9e,QAAQ6c,QAAQkC,SAASC,MACjCC,YAAa9C,EACb+C,qBAAqB,EACrBC,eAAe,EACfP,YAAaA,EACbf,WAAY,4BACZuB,aAAc,SACdC,OAAQ,CACNC,eAAgB1Z,KAMtB,SAAS6Z,EAAyBtD,GAChC,IAAIvW,EAAWuL,EAAgBuO,EAAatN,EAAOxF,EAAQ+S,EAAgBC,EAkF3E,SAASC,EAAmCnE,EAAQqC,EAAWnY,EAAWgH,GACxE8O,EAAOoE,qBAAuB,WAC5Bla,EAAUyU,QAAQzN,GAAQ7J,KAAKgb,EAAUgC,KAAM,SAAS9a,GACtD8Y,EAAUxS,SAASxI,KAAK,WACtBid,EAAuB/a,EAAUW,EAAWgH,IAC3C,iBAKP8O,EAAOuE,qBAAuB,kBACrBra,EAAUqH,aACjBrH,EAAUyU,QAAQzN,GAAQ7J,KAAKgb,EAAUgC,KAAM,SAAS9a,GACtD8Y,EAAUxS,SAASxI,KAAK,WACtBid,EAAuB/a,EAAUW,EAAWgH,IAC3C,iBAOT,SAASoT,EAAuB/a,EAAUW,EAAWgH,GAC/C3H,EAASC,QAAUgZ,EAAiBtd,uBACpCqE,EAASxC,MAAQwC,EAASxC,KAAKyd,SAAWlgB,QAAQoI,SAASnD,EAASxC,KAAKyd,UAC3EnC,EAAUc,KAAK,CACbC,OAAQ9e,QAAQ6c,QAAQkC,SAASC,MACjCE,qBAAqB,EACrBC,eAAe,EACfP,YAAa,4BACbf,WAAYsC,EACZf,aAAc,oCACdC,OAAQ,CACNzZ,UAAWA,EACXgH,OAAQA,EACRwT,cAAenb,EAASxC,KAAKyd,WAE9Bnd,KAAK,WACN2F,EAAWkD,MAAM,mBAChB,cAUP,SAASuU,EAAiCzE,EAAQqC,EAAWnY,EAAWgH,EAAQwT,GACrErhB,KAENqhB,cAAgBA,EAFVrhB,KAGNwM,OAASwS,EAAUxS,OAHbxM,KAINsI,KAEH,WACEzB,EAAUyU,QAAQra,QAAQC,OAAO,CAAEogB,iBAAiB,GAAQzT,IAAS7J,KAAKgb,EAAUgC,OAzIxFna,EAAY9F,EAAU+J,OAAOjE,UAC7BuL,EAAiBrR,EAAU+J,OAAOsH,eAE9BvL,EAAU6C,OACZiX,EAAcvO,EAAemP,wBAC7B1a,EAAU2a,QAAU,GAChB3a,EAAU4a,WACZd,EAAYe,UAAY,IAC1B7a,EAAUgN,SAAgC,GAAvB8M,EAAYe,UAC/BlB,EAAa,KAAM,cAAe3Z,GAC/B6Q,QACAiK,QAAQ,WACPjhB,EAAS,WACPK,EAAUoR,oBAKhBkB,EAAQjB,EAAemP,wBAAwBK,SAASxP,EAAeyP,0BACvEhU,EAAS,CACP8D,KAAM0B,EAAMxB,UACZjB,MAAqB,GAAdyC,EAAMzC,MACb8Q,SAA2B,GAAjBrO,EAAMqO,UAEdtP,EAAe0P,kBAAwC,IAApBzO,EAAMxB,YAE3C+O,EAAiBxO,EAAemP,wBAAwB1P,UACxDgP,EAAkB1e,EAAEgC,OAAOrE,EAASuC,WAAY,CAAEC,OAAQ,IAC1DuL,EAAO2O,YAAcqE,EAAgBD,GAAgBzgB,GACrD0N,EAAO8D,KAAO,GAEZ9K,EAAUkb,cAAgBlb,EAAUqH,aAGtCrH,EAAUyU,QAAQzN,GAAQ7J,KAAK,WAC7B2F,EAAWkD,MAAM,kBACjBuS,EAAM4C,aACL,SAAS9b,GACV+a,EAAuB/a,EAAUW,EAAWgH,KAC3C8T,QAAQ,WACTjhB,EAAS,WACPK,EAAUoR,kBAGPtL,EAAUqH,cACjB8Q,EAAUc,KAAK,CACbK,qBAAqB,EACrBC,eAAe,EACfE,OAAQ,CACNzZ,UAAWA,EACXgH,OAAQA,GAEVoU,SAAU,CACR,kDACA,kDACA,UAAYzb,EAAE,qBAAuB,OACrC,yBACA,wBACA,oDAAsDA,EAAE,6BAA+B,eACvF,oDAAsDA,EAAE,yBAA2B,eACnF,yBACA,gBACA4H,KAAK,IACP0Q,WAAYgC,IACX9c,KAAK,WACN2F,EAAWkD,MAAM,mBAChB,cAEA8U,QAAQ,WACTjhB,EAAS,WACPK,EAAUoR,mBASlB2O,EAAmCjC,QAAU,CAAC,SAAU,YAAa,YAAa,UAiDlFuC,EAAiCvC,QAAU,CAAC,SAAU,YAAa,YAAa,SAAU,iBArV5FQ,EAAa,CACX6C,MAAO,QACPC,SAAU,WACVrQ,aAAc,WACdlB,MAAO,QACPwR,SAAU,WACV3T,SAAU,WACVtI,OAAQ,SACRsL,OAAQ,CACNkC,IAAK,OAEP0O,MAAO,CACL1O,IAAK,aAITsJ,EAAGpW,UAAY9F,EACfkc,EAAGtO,cAAgB,SACnBsO,EAAGqF,aAAe,EAClBrF,EAAGqC,oBAAsBA,EACzBrC,EAAGuC,mBAiFH,WACErd,EAAE0B,QAAQ9C,EAAU,IAAMkc,EAAGtO,eAAgB,SAAS9H,GACpDA,EAAUsF,UAAW,IAEvB8Q,EAAGyC,KAAK6C,SAAW,GApFrBtF,EAAGuF,UAuFH,WACErgB,EAAE0B,QAAQ9C,EAAU,IAAMkc,EAAGtO,eAAgB,SAAS9H,GACpDA,EAAUsF,UAAW,IAEvB8Q,EAAGyC,KAAK6C,SAAWxhB,EAAU,IAAMkc,EAAGtO,eAAevC,QA1FvD6Q,EAAGwC,WAAaA,EAChBxC,EAAGwF,yBA4FH,SAAkCrF,EAAQvW,GACxCA,EAAUsF,UAAYtF,EAAUsF,SAChC8Q,EAAGyC,KAAK6C,UAAY1b,EAAUsF,SAAU,GAAK,EAC7CiR,EAAOsF,iBACPtF,EAAOuF,mBA/FT1F,EAAG2F,gCAuGH,WACE1D,EAAO2D,QAAQrc,EAAE,WACFA,EAAE,4DACF,CAAEsc,GAAItc,EAAE,YACpBxC,KAAK,WAEJ,IAAI4C,EAAazE,EAAEgC,OAAOpD,EAAU,IAAMkc,EAAGtO,eAAgB,SAAS9H,GACpE,OAAOA,EAAUsF,WAEnBrM,EAAS6G,kBAAkBC,GAAY5C,KAAK,WAC1CiZ,EAAGyC,KAAK6C,SAAW,EACnB5Y,EAAWkD,MAAM,uBAjHzBoQ,EAAG8F,UAsHH,SAAmB3F,EAAQlR,GACzByT,EAAcvC,EAAQlR,EAAO,gBAtH/B+Q,EAAG+F,SAyHH,SAAkB5F,EAAQ9Q,GACxBqT,EAAcvC,EAAQ9Q,EAAM,SAzH9B2Q,EAAGuD,aAAeA,EAClBvD,EAAG9Y,OAuUH,SAAgBwG,GACd,CAAA,IAAIA,EAIF,OAAO5J,EAAU,SAAWkc,EAAGtO,cAAcf,cAAcjD,YAH3D5J,EAAUkM,QAAQgQ,EAAGtO,cAAe,CAAEhE,YAAaA,MAxUvDsS,EAAGgG,WA+UH,SAAoBtY,GAClB,OAAO5J,EAAU,SAAWkc,EAAGtO,cAAcf,cAAcjD,aAAeA,GA/U5EsS,EAAGxS,KAkVH,SAAcyY,GACZ,CAAA,IAAIA,EAGC,CACH,IAAIzY,EAAO1J,EAAU,SAAWkc,EAAGtO,cAAcf,cAAcnD,KAC/D,OAAO4U,EAAW5U,IAAS4U,EAAWpC,EAAGtO,eAAelE,GAJxD1J,EAAUkM,QAAQgQ,EAAGtO,cAAe,CAAElE,KAAMyY,MAnVhDjG,EAAGkG,SA2VH,SAAkBD,GAChB,OAAOniB,EAAU,SAAWkc,EAAGtO,cAAcf,cAAcnD,MAAQyY,GA3VrEjG,EAAGsC,OAkWH,WACExe,EAAUiM,QAAUjM,EAAUiJ,OAAO4B,QACrC9L,EAASuG,qBAAqBsb,QAAQ,WACpChY,EAAWkD,MAAM,qBApWrBoQ,EAAGmG,aAwWH,WACEnG,EAAGyC,KAAKnV,QAAS,EACjBxJ,EAAUkM,QAAQgQ,EAAGtO,cAAe,CAAEjN,MAAO,MAzW/Cub,EAAGyC,KAAO,CAAEnV,QAAQ,EAAOgY,SAAU,GAGrCviB,KAAKqe,QAAU,WA4Bf,IAA0BtQ,GAAAA,EA3BPmP,GA4BZ/Z,KAAK2Z,EAAUwB,aAAa,CAC/BjW,IAAK7B,EAAE,iBACP+X,YAAa/X,EAAE,UACfgY,SAAUiB,KAEZ1R,EAAK5K,KAAK2Z,EAAUwB,aAAa,CAC/BjW,IAAK7B,EAAE,uBACP+X,YAAa/X,EAAE,sBACfgY,SAAUgC,EACV/B,KAAM,iBAER1Q,EAAK5K,KAAK2Z,EAAUwB,aAAa,CAC/BjW,IAAK7B,EAAE,sBACP+X,YAAa/X,EAAE,qBACfgY,SAAUgC,EACV/B,KAAM,UAIRtc,EAAE0B,QAAQkK,EAAM,SAAS1F,GACvByU,EAAU4B,eAAerW,KA7C3BO,EAAO,SAC2C,iBAA9C9H,EAAYuC,SAASvD,SAASujB,eAChCpG,EAAGqF,aAAe,EAClB1Z,EAAO,SAET0W,EAAoB1W,EAAM,CAAE2W,QAAQ,IAGpC5V,EAAWgV,IAAI,iBAAkB,WAC/B5d,EAAUkM,QAAQgQ,EAAGtO,cAAe,CAAE4Q,QAAQ,MAIhD5V,EAAWgV,IAAI,mBAAoB+B,GAEnC/D,EAAOgC,IAAI,WAAY,WAErBxc,EAAE0B,QAAQqZ,EAAS,SAAS7U,GAC1ByU,EAAU8B,iBAAiBvW,QAmUjCrI,KAAKsjB,UAAY,WACf,OAAOviB,EAAU,SAAWkc,EAAGtO,cAAcf,cAAclD,KAnY/DqU,EAAuBF,QAAU,CAAC,aAAc,SAAU,KAAM,WAAY,SAAU,YAAa,YAAa,UAAW,SAAU,cAAe,mBAAoB,WAAY,YAAa,SAmZjM5d,QACGO,OAAO,oBACPsd,WAAW,yBAA0BC,GA3Z1C,GCAA,WACE,aAMA,SAASwE,EAAoB5Z,EAAYgT,EAAQ6G,EAASxE,EAAWre,EAAM8iB,EAAUvE,EAAQte,EAAUE,EAAahB,GAClH,IAAImd,EAAKjd,KAETid,EAAG9b,WAAaP,EAASO,WACzB8b,EAAGyG,QAAU5jB,EACbmd,EAAG0G,YA6EH,SAAqBC,GACnB1E,EAAO2E,OAAOrd,EAAE,gBAAiBA,EAAE,yBAChCxC,KAAK,SAAS9D,GACb,IAAI8B,EAAW,IAAIlC,EACjB,CACEI,KAAMA,EACNyF,YAAY,EACZC,UAAU,EACVnB,MAAOqf,YAGX9hB,EAAS2F,MAAM3D,KAAK,WAClBlE,EAASyC,KAAKP,KACb0V,MAAMvV,EAAE4hB,SAzFjB9G,EAAG+G,eA6FH,WA0BE,SAASC,EAAgCC,EAAOlF,EAAW5Z,EAAKpD,GAC9D,IAAIib,EAAKjd,KACLmkB,EAAQ/e,EAAIuN,MAAM,KAClByR,EAAWD,EAAM,GAErBlH,EAAGiF,MAAQ1b,EAAE,oCAAoC6d,UAAUD,GAC3DnH,EAAG7X,IAAMA,EACT6X,EAAGqH,aAAe,SAASC,IACrBA,EAAKC,QAAWD,EAAKhe,OAAOke,UAC9BziB,EAASuG,eAAe0U,EAAGzU,SAAUyU,EAAGxU,UAAUzE,KAAK,SAASmd,GAC9DnC,EAAUgC,QACT,SAAS0D,GACVH,EAAK9b,SAASkc,aAAa,eAAe,MAIhD1H,EAAGzQ,OAAS,WACVwS,EAAUxS,UA1Cd0S,EAAO2E,OAAOrd,EAAE,kCAAmCA,EAAE,uBAAwB,CAACoe,UAAW,QACtF5gB,KAAK,SAASoB,GACbtF,EAASqF,gBAAgBC,GAAKpB,KAAK,SAAShC,GACtCf,QAAQoI,SAASrH,IAEnBgd,EAAUc,KAAK,CACbC,OAAQ9e,QAAQ6c,QAAQkC,SAASC,MACjCE,qBAAqB,EACrBC,eAAe,EACfP,YAAa,2BACbf,WAAYmF,EACZ5D,aAAc,mCACdC,OAAQ,CACNlb,IAAKA,EACLpD,SAAUA,SAUtBiiB,EAAgCpF,QAAU,CAAC,QAAS,YAAa,MAAO,aArH1E5B,EAAG4H,kBA8IH,SAA2BtgB,GACzB5D,EAAKkF,MAAM,qBAAuBtB,EAAaE,MAAQF,EAAarE,MACpEJ,EAASiF,WAAWR,EAAaE,MAAOF,EAAarE,MAAM8D,KAAK,SAASN,GACtE+f,EAAS3D,KACP2D,EAASqB,SACNC,QAAQve,EAAE,wCACVwe,SAAS,aACTC,UAAU,SAnJpBhI,EAAG9Y,OAAS,CAAEjE,KAAM,IACpB+c,EAAGiI,cAAe,EAClBjI,EAAGkI,mBA8DH,WACElI,EAAGiI,cAAgBjI,EAAGiI,aACtBjI,EAAG9Y,OAAOjE,KAAO,IA/DnB+c,EAAGmI,UAkEH,WACEtlB,EAASyD,oBAlEX0Z,EAAGoI,kBAAoB,CACrBC,oBAAqB,mBACrBC,YAAa,UACbC,aAqDF,WACE1lB,EAASyD,iBAAiBpB,EAAEqB,QAAQ1D,EAASuC,WAAY,QArDzDojB,OAgDF,SAAyBC,EAAuBC,EAAmBC,GACjE,OAAOF,EAAsBG,cAAc/H,QAAQ,IAAM6H,EAAkB7H,QAAQ,KA9CrF9d,KAAKqe,QAAU,WACbpB,EAAGpK,WAAa1Q,EAAE2C,IAAIhE,EAAYmB,SAAS6jB,uBAAwB,SAAS5lB,GAC1E,MAAO,CAAEC,GAAID,EAAK6lB,kBACT7lB,KAAMA,EACNoH,MAAOxG,EAAYmB,SAASsJ,6BAA6BrL,MAMpEyc,EAAOqJ,OACL,WACE,OAAO7jB,EAAE+B,MACP/B,EAAE2C,IAAIhF,EAASgD,WAAY,SAASE,GAAK,OAAOb,EAAE8jB,KAAKjjB,EAAG,CAAC,KAAM,SAAU,YAC3Eb,EAAE2C,IAAIhF,EAAS+C,eAAgB,SAASG,GAAK,OAAOb,EAAE8jB,KAAKjjB,EAAG,CAAC,KAAM,SAAU,YAC/Eb,EAAE2C,IAAIhF,EAAS6C,cAAe,SAASK,GAAK,OAAOb,EAAE8jB,KAAKjjB,EAAG,CAAC,KAAM,SAAU,cAGlF,SAASkjB,EAASC,GAChB,IAAIC,EAAYlf,EAAKd,EAGrBggB,EAAajkB,EAAEkkB,eAAeH,EAASC,EAAS,MAChDjf,EAAM/E,EAAE2C,IAAI3C,EAAEgC,OAAOiiB,EAAY,SAASpjB,GACxC,IAAIsjB,EAAYnkB,EAAEC,KAAK+jB,EAAS,CAAEhmB,GAAI6C,EAAE7C,KACxC,OAAQgC,EAAEokB,QAAQvjB,EAAGsjB,KACnB,MACJlgB,EAAUtG,EAASW,GAAGmH,OAEL,EAAbV,EAAIkF,SACNzL,EAAKkF,MAAMqB,EAAIkH,KAAK,MAAQ,YAC5BhI,EAAUtG,EAASmH,sBAAsBC,KAE1B,EAAbA,EAAIkF,QAAcga,EAAWha,QAAU8Z,EAAQ9Z,QAAUga,EAAWha,QAAU+Z,EAAQ/Z,SACxFhG,EAAQpC,KAAK,WACX2F,EAAWkD,MAAM,sBAGvB,IA3DN0W,EAAoB1E,QAAU,CAAC,aAAc,SAAU,UAAW,YAAa,OAAQ,WAAY,SAAU,aAAc,cAAe,YAmK1I5d,QACGO,OAAO,oBACPsd,WAAW,sBAAuByE,GA3KvC,GCAA,WACE,aAMA,SAASiD,EAAoB7c,EAAYlJ,EAAIue,EAAWlf,EAAUiB,EAAW0lB,EAAarH,EAAOsH,EAASnG,GACxG,IAAe1Z,EAAXoW,EAAKjd,KAqCT,SAAS2mB,EAAYvJ,EAAQwJ,GAC3BF,EAAQrkB,WAAW2B,KAAK,SAAS6iB,GAC/B,IAAIC,EAAU3kB,EAAEC,KAAKykB,EAAU,SAAS7jB,GACtC,GAAa,IAATA,EAAE7C,GACJ,OAAO6C,IAEP+jB,EAAqBtmB,EAAG6E,QAI5BwhB,EAAQE,gBAAgBhjB,KAAK,SAASijB,GACpCH,EAAQI,cAAcljB,KAAK,SAASmd,GAClClgB,QAAQC,OAAOigB,EAAQgG,SAAU,CAAEC,GAAIR,EAAYS,QAASpK,EAAGpW,UAAU2a,UACzExC,EAAUc,KAAK,CACbC,OAAQ9e,QAAQ6c,QAAQkC,SAASC,MACjCC,YAAa9C,EACb+C,qBAAqB,EACrBC,eAAe,EACfP,YAAa,wBACbf,WAAY,0BACZuB,aAAc,SACdiH,WAAY,SAAUpD,EAAOpG,GAC3B,OAAOiJ,EAAmB9gB,QAAQ6X,IAEpCwC,OAAQ,CACNiH,aAAcT,EACdU,aAAcrG,EACdsG,kBAAmB,WACjB,OAAOV,EAAmB3gB,kBAQtCgX,EAAOsF,iBACPtF,EAAOuF,kBAxET3iB,KAAKqe,QAAU,WACbre,KAAK0nB,gBAAkB5nB,EACvBE,KAAK0jB,QAAU3iB,EACff,KAAK6G,UAAY0Z,EAGjBvgB,KAAKqW,UAAY,CAACkK,EAAelK,YAGnCrW,KAAK2nB,MAAQ,WACX3I,EAAUgC,QAGZhhB,KAAK4nB,aAAe,WAClB,OAAQ5nB,KAAK6G,WACL7G,KAAK6G,UAAUub,UACfpiB,KAAK6G,UAAUub,SAAW,GAIpCpiB,KAAK6nB,WAAa,SAAUvd,GAC1B,OAAOmc,EAAYqB,WAAWxd,IAGhCtK,KAAK+nB,4BAA8B,SAAU3K,GAI3CuJ,EAAYvJ,EAHKjb,EAAE2C,IAAI9E,KAAK6G,UAAUiP,UAAW,SAASC,GACxD,OAAOA,EAAS7V,KAAO,KAAO6V,EAASE,MAAQ,QAKnDjW,KAAKgoB,wBAA0B,SAAU5K,EAAQld,EAAM+V,GACrD0Q,EAAYvJ,EAAQ,CAACld,EAAO,KAAO+V,EAAQ,OA2C7CjW,KAAKioB,KAAO,WACV,IAAIrf,EAAoC,UAA5B5I,KAAK6G,UAAUA,UAAwB,cAAc,OACjEmY,EAAUgC,OAAOhd,KAAK,WAGpB,IAAI6b,EAAc,MAAQjX,EAAO,iBACjCoW,EAAUc,KAAK,CACbC,OAAQ9e,QAAQ6c,QAAQkC,SAASC,MACjCE,qBAAqB,EACrBC,eAAe,EACfP,YAAaA,EACbf,WAAY,4BACZuB,aAAc,SACdC,OAAQ,CACNC,eAAgBtD,EAAGpW,gBAM3B7G,KAAKkoB,mBAAqB,YACxBrhB,EAAY/G,EAAS6E,KAAK3E,KAAK6G,UAAUE,KAAKiC,cAAchJ,KAAK6G,UAAU1G,KACjE8b,qBAAqBjY,KAAK,WAClCiZ,EAAGpW,UAAYA,EACfoW,EAAGgL,UAIPjoB,KAAKob,MAAQ,SAAUvU,IACbA,GAAa7G,KAAK6G,WAExBsU,SAASnX,KAAK,WACd2F,EAAWkD,MAAM,kBACjBuS,EAAM4C,YACNhD,EAAUgC,UAIdhhB,KAAKmoB,oBAAsB,YAEzBthB,EAAY/G,EAAS6E,KAAK3E,KAAK6G,UAAUE,KAAKiC,cAAchJ,KAAK6G,UAAU1G,KACjE8b,qBAAqBjY,KAAK,WAElC6C,EAAUuU,MAAQ6B,EAAGpW,UAAUuU,MAC/BvU,EAAUwU,YAAc4B,EAAGpW,UAAUwU,YACrCxU,EAAUyO,UAAY2H,EAAGpW,UAAUyO,UACnCzO,EAAUkM,MAAQkK,EAAGpW,UAAUkM,MAE/BkK,EAAG7B,MAAMvU,MAIb7G,KAAKooB,iBAAmB,WACtBpoB,KAAK6G,UAAUsB,QAAO,GAAMnE,KAAK,WAC/B2F,EAAWkD,MAAM,kBACjBmS,EAAUgC,UAIdhhB,KAAKqoB,qBAAuB,WAC1BroB,KAAK6G,UAAUsB,SAASnE,KAAK,WAC3B2F,EAAWkD,MAAM,kBACjBmS,EAAUgC,UAIdhhB,KAAKsoB,gBAAkB,SAAUlL,GAC/Btd,EAASO,WAAWqF,KAAK1F,KAAK6G,UAAUE,IAAM,IAAM/G,KAAK6G,UAAU1G,GAAI,OAAO6D,KAAK,SAASN,GAyB1F,SAAS6kB,EAAmCrE,EAAOlF,EAAWtb,GAC5DwgB,EAAMxgB,KAAOA,EACbwgB,EAAMyD,MAAQ,WACZ3I,EAAUgC,QA3BdhC,EAAUgC,OACVhC,EAAUc,KAAK,CACbC,OAAQ9e,QAAQ6c,QAAQkC,SAASC,MACjCC,YAAa9C,EACb+C,qBAAqB,EACrBC,eAAe,EACf6B,SAAU,CACR,+DAAiEzb,EAAE,mBAAqB,KACxF,kDACA,sCACA,yBACA,wBACA,qCAAuCA,EAAE,SAAW,eACpD,yBACA,gBACA4H,KAAK,IACP0Q,WAAYyJ,EACZjI,OAAQ,CAAE5c,KAAMA,KAMlB6kB,EAAmC1J,QAAU,CAAC,QAAS,YAAa,WAUxE7e,KAAKwoB,sBAAwB,SAAUxmB,GACrChC,KAAK6G,UAAU0V,OAAOva,GAAUgC,KAAK,WACnCgb,EAAUgC,OACVrX,EAAWkD,MAAM,qBAIrB7M,KAAKyoB,sBAAwB,SAAUzmB,GACrChC,KAAK6G,UAAU4V,OAAOza,GAAUgC,KAAK,WACnCgb,EAAUgC,OACVrX,EAAWkD,MAAM,qBASvB,SAAS6b,EAA0B/e,EAAYgT,EAAQhc,EAAMD,EAAUse,EAAWC,EAAOpV,EAAMsV,EAAkBrf,EAAUiB,EAAW0lB,EAAa3c,EAAMsV,EAAOmB,GAC9J,IAA0BoI,EAAcC,EAApC3L,EAAKjd,KA0LT,SAAS6oB,IACP,IAAIlX,EAAO,GAKX,OAHIsL,EAAGpW,UAAU+J,OAASqM,EAAGpW,UAAU8M,MACrChC,EAAOsL,EAAGpW,UAAU+J,MAAMuH,SAAS8E,EAAGpW,UAAU8M,MAE3CxR,EAAE2C,IAAI6M,EAAM,SAAS7C,GAC1B,MAAO,CAAEiN,oBAAqBjN,EAAKiN,sBAC1B7L,aAAcpB,EAAKoB,kBAoFhC,SAASgG,IACP+G,EAAG6L,gBAAgBnX,KAAOkX,IAC1B5L,EAAGpW,UAAUqP,iBAtRflW,KAAKqe,QAAU,WACbre,KAAK0jB,QAAU5jB,EACfE,KAAK6G,UAAY0Z,EACjBvgB,KAAK6S,WAAa,GAClB7S,KAAK+oB,qBAAuB/oB,KAAK6G,UAAUmO,iBAC3ChV,KAAKgpB,oBAAsBhpB,KAAK6G,UAAUiP,WAAa9V,KAAK6G,UAAUiP,UAAU1J,OAEhFpM,KAAKipB,uBAAwB,EAC7BjpB,KAAK8oB,gBAAkB,CACrBnX,KAAMkX,IACNK,MA0LJ,WAEE,IADA,IAAIA,EAAQ,GACHjmB,EAAI,EAAGA,GAAK,GAAIA,IACvBimB,EAAM/lB,KAAKF,EAAEuR,YAEf,OAAO0U,EA/LE1Q,IAGLxY,KAAK6G,UAAU+J,QACjB+X,EAAe,IAAIvb,KAAKpN,KAAK6G,UAAU+J,MAAMtB,YAC3CtP,KAAK6G,UAAU8M,MACjBiV,EAAa,IAAIxb,KAAKpN,KAAK6G,UAAU8M,IAAIrE,YACvCtP,KAAK6G,UAAUkN,KACJ,IAAI3G,KAAKpN,KAAK6G,UAAUkN,IAAIzE,YAG7CtP,KAAKwa,aAAe,WAClB,IAAIvX,EAAIjD,KAAK6G,UAAU2T,aAAa,IACpCyE,EAAM,aAAehc,IAGvBjD,KAAKmpB,uBAAyB,WAC5BnpB,KAAK+oB,sBAAwB/oB,KAAK+oB,qBAClC/oB,KAAK6G,UAAUmO,iBAAmBhV,KAAK+oB,sBAGzC/oB,KAAKopB,sBAAwB,WAC3BppB,KAAKgpB,qBAAuBhpB,KAAKgpB,qBAGnChpB,KAAKqpB,+BAAiC,WACpC,OAAOrpB,KAAK6G,WACyB,WAAnC7G,KAAK6G,UAAUiM,OAAOwB,WACc,cAApCtU,KAAK6G,UAAUiM,OAAOvF,MAAM3E,MAGhC5I,KAAKspB,gBAAkB,WACkB,UAAnCtpB,KAAK6G,UAAUiM,OAAOwB,YACxBtU,KAAK+oB,sBAAuB,IAGhC/oB,KAAKupB,eAAiB,WACEvpB,KAAK6G,UAAUiP,WAA+C,EAAlC9V,KAAK6G,UAAUiP,UAAU1J,QAEzEpM,KAAK6G,UAAUsP,cAAcrW,EAAS6E,KAAK3E,KAAK6G,UAAUgP,uBAI9D7V,KAAK6nB,WAAa,SAAUvd,GAE1B,OADAmc,EAAYqB,WAAWxd,GAChBmc,EAAY+C,QAGrBxpB,KAAKiZ,YAAc,SAAUC,EAAMuQ,GACjC,IAIIxmB,EAAGymB,EAJHvT,GAAkBnW,KAAK6G,UAAUiP,WAAiD,IAApC9V,KAAK6G,UAAUiP,UAAU1J,OACvEyJ,EAAsB/V,EAAS6E,KAAK3E,KAAK6G,UAAUgP,qBACnDlN,EAAUwN,EAAe,CAAEgD,kBAAmBtD,GAAwB,GACtE8T,EAAU,4LAId,SAASC,EAAWC,GAClB,IACI5T,EADQ4T,EAAI1U,MAAMwU,GACJ,GACdzpB,EAAO2pB,EAAInM,QAAQ,IAAIlP,OAAO,OAASyH,EAAQ,QAAS,IAG5D,OAFAgH,EAAG+L,qBAAuB7S,EAC1B8G,EAAG6M,WAAa,GACT,IAAIhgB,EAAK,CAAE6P,KAAMxX,EAAE4nB,KAAK7pB,EAAM,MAAOka,OAAQ,CAAC,CAAE1Y,MAAOuU,MAGhE,GAXIwT,IAAS9gB,EAAQ8gB,QAAUA,GAW3BxoB,QAAQqS,SAAS4F,GAAO,CAO1B,IADAwQ,EAAU,GACLzmB,EAAI,EAAGA,EAAIiW,EAAK9M,OAAQnJ,IACC,GAAvBiW,EAAK8Q,WAAW/mB,IACM,IAAtBiW,EAAK8Q,WAAW/mB,IACM,IAAtBiW,EAAK8Q,WAAW/mB,IACM,IAAtBiW,EAAK8Q,WAAW/mB,KACjB0mB,EAAQM,KAAKP,GAKfA,GAAWxQ,EAAKgR,OAAOjnB,IAJvBjD,KAAK6G,UAAUoS,YAAY2Q,EAAWF,GAAU/gB,GAChD+gB,EAAU,IAMVA,GACF1pB,KAAK6G,UAAUoS,YAAY2Q,EAAWF,GAAU/gB,QAGlD3I,KAAK6G,UAAUoS,YAAYC,EAAMvQ,GACjC3I,KAAKgpB,qBAAuB7S,GAIhCnW,KAAKmqB,eAAiB,SAAUpU,EAAUwO,GACxCvkB,KAAK6G,UAAUwT,eAAetE,GACU,IAApC/V,KAAK6G,UAAUiP,UAAU1J,SAC3BpM,KAAKgpB,qBAAsB,GAC7BzE,EAAK6F,aAGPpqB,KAAKqqB,cAAgB,WACnB,GAAIrqB,KAAK6G,WAAa7G,KAAK6G,UAAUub,SACnC,OAA8B,EAA1BpiB,KAAK6G,UAAUub,SACV5b,EAAE,OACwB,EAA1BxG,KAAK6G,UAAUub,SACf5b,EAAE,UAEFA,EAAE,SAIfxG,KAAKsqB,oBAAsB,SAAU/F,GACR,QAAvBvkB,KAAK6G,UAAU+B,MAAkB5I,KAAK6G,UAAUyO,YAC/CtV,KAAK6G,UAAU+J,OAAS5Q,KAAK6G,UAAUkN,QACrC/T,KAAK6G,UAAU+J,OAA0C,SAAjC5Q,KAAK6G,UAAUkM,MAAMK,WAC7CpT,KAAK6G,UAAUkN,KAA0C,OAAjC/T,KAAK6G,UAAUkM,MAAMK,UAClDmR,EAAKgG,cAAc5F,aAAa,SAAS,GAGzCJ,EAAKgG,cAAc5F,aAAa,SAAS,IAI7C3kB,KAAKwqB,cAAgB,SAAUjG,GACD,SAAxBvkB,KAAK6G,UAAU+B,OAGd5I,KAAK6G,UAAU+J,OAA0C,SAAjC5Q,KAAK6G,UAAUkM,MAAMK,SAEtCpT,KAAK6G,UAAUkN,KAAwC,OAAjC/T,KAAK6G,UAAUkM,MAAMK,WACrDpT,KAAK6G,UAAUkM,MAAMK,SAAW,SAFhCpT,KAAK6G,UAAUkM,MAAMK,SAAW,MAIlCpT,KAAKsqB,oBAAoB/F,KAG3BvkB,KAAKsI,KAAO,SAAUic,EAAM5b,GAC1B3I,KAAKsqB,oBAAoB/F,GACrBA,EAAKC,QACPxkB,KAAK6G,UAAUoB,MAAMU,GAClB3E,KAAK,SAASN,GACbiG,EAAWkD,MAAM,kBACjBuS,EAAM4C,YACNhD,EAAUgC,QACT,SAAS9a,GAwBlB,IAAcqe,EAvBFre,EAASC,QAAUgZ,EAAiBtd,uBACpCM,EAAEkH,SAASnD,EAASxC,KAAKyd,SAC3BlE,EAAGgM,sBAAwB/iB,EAASxC,KAAKyd,SAqBrCoD,EAnBCA,EAoBbtH,EAAGgM,uBAAwB,EAC3B1E,EAAKkG,eACLlG,EAAK6F,gBAjBPpqB,KAAK0qB,MAAQ,SAAUnG,GACrBvkB,KAAK6G,UAAUuB,SACfmc,EAAKkG,gBAGPzqB,KAAKwM,OAAS,SAAU+X,GACtBvkB,KAAK0qB,MAAMnG,GACPvkB,KAAK6G,UAAU6C,QAEjB1J,KAAK6G,UAAY,MAEnBmY,EAAUgC,QA6BZhhB,KAAK2qB,aAAe,SAAUpG,GAC5BvkB,KAAK6G,UAAUkU,gBACf4N,EAAe,IAAIvb,KAAKpN,KAAK6G,UAAU+J,MAAMtB,WACxCtP,KAAK6G,UAAUkN,MAClB/T,KAAK6G,UAAUkM,MAAMK,SAAW,SAElCpT,KAAKsqB,oBAAoB/F,IAG3BvkB,KAAK4qB,gBAAkB,SAAUrG,GAC/BvkB,KAAK6G,UAAUmU,mBACXhb,KAAK6G,UAAUkN,MACjB/T,KAAK6G,UAAUkM,MAAMK,SAAW,OAElCpT,KAAKsqB,oBAAoB/F,IAG3BvkB,KAAK6qB,WAAa,SAAUtG,GAC1BvkB,KAAK6G,UAAU+T,cACF,IAAIxN,KAAKpN,KAAK6G,UAAUkN,IAAIzE,WACpCtP,KAAK6G,UAAU+J,QAClB5Q,KAAK6G,UAAUkM,MAAMK,SAAW,OAElCpT,KAAKsqB,oBAAoB/F,IAG3BvkB,KAAK8qB,cAAgB,SAAUvG,GAC7BvkB,KAAK6G,UAAUiU,iBACX9a,KAAK6G,UAAU+J,QACjB5Q,KAAK6G,UAAUkM,MAAMK,SAAW,SAElCpT,KAAKsqB,oBAAoB/F,IAG3BvkB,KAAK+qB,gBAAkB,WACjB/qB,KAAK6G,UAAU+J,QAIH,IADN+X,EAAaqC,UAAYhrB,KAAK6G,UAAU+J,MAAMoa,YAEpDrC,EAAe,IAAIvb,KAAKpN,KAAK6G,UAAU+J,MAAMtB,WACjB,gBAAxBtP,KAAK6G,UAAU+B,OACjB5I,KAAK6G,UAAU8M,IAAM,IAAIvG,KAAKpN,KAAK6G,UAAU+J,MAAMtB,WACnDtP,KAAK6G,UAAU8M,IAAI+E,WAAW1Y,KAAK6G,UAAUwM,OAC7CuV,EAAa,IAAIxb,KAAKpN,KAAK6G,UAAU8M,IAAIrE,YAE3C4G,OAKNlW,KAAKirB,cAAgB,WACnB,GAAIjrB,KAAK6G,UAAU8M,IAAK,CAEtB,IAAIN,EAAQuV,EAAWoC,UAAYhrB,KAAK6G,UAAU8M,IAAIqX,UACxC,IAAV3X,KACFA,EAAQrT,KAAK6G,UAAU+J,MAAMgD,UAAU5T,KAAK6G,UAAU8M,MAC1C,EACV3T,KAAK6G,UAAU8M,IAAM,IAAIvG,KAAKwb,EAAWtZ,YAEzCtP,KAAK6G,UAAUwM,MAAQA,EACvBuV,EAAa,IAAIxb,KAAKpN,KAAK6G,UAAU8M,IAAIrE,YAE3C4G,OAKNlW,KAAKkrB,cAAgB,WACN,IAAI9d,KAAKpN,KAAK6G,UAAUkN,IAAIzE,YA3d7CkX,EAAoB3H,QAAU,CAAC,aAAc,KAAM,YAAa,WAAY,YAAa,cAAe,QAAS,UAAW,kBAsM5H6J,EAA0B7J,QAAU,CAAC,aAAc,SAAU,OAAQ,WAAY,YAAa,UAAW,OAAQ,mBAAoB,WAAY,YAAa,cAAe,OAAQ,QAAS,kBA8R9L5d,QACGO,OAAO,oBACPsd,WAAW,sBAAuB0H,GAClC1H,WAAW,4BAA6B4J,GA7e7C,GCAA,WAEE,aAoCA,SAASyC,EAAwBxO,EAAQ7c,GAGvCE,KAAKqN,IAAMsP,EAAOtP,IAClBrN,KAAK6R,UAAY8K,EAAO9K,UACxB7R,KAAKorB,UAAYzO,EAAOyO,UACxBprB,KAAKuE,aAAe,WAClB,IAAIwC,EAAKqR,EAAOyI,EAChB,OAAIlE,EAAO3a,UAET+E,EAAM4V,EAAO3a,SACb6e,EAAkB1e,EAAEgC,OAAOrE,EAASuC,WAAY,CAAEC,OAAQ,IAC1D8V,EAAQjW,EAAEY,UAAU8d,EAAiB,SAAS7e,GAC5C,OAAOA,EAAS7B,IAAM4G,IAEjB,CAAEA,IAAKA,EAAKqR,MAAOA,IAGrB,MAnBX+S,EAAwBtM,QAAU,CAAC,SAAU,YAuB7C5d,QACGO,OAAO,oBACP6pB,UAAU,gBAzCb,WACE,MAAO,CACLC,SAAU,IACVpH,MAAO,CACL7W,IAAK,SACLwE,UAAW,eACXuZ,UAAW,eACXppB,SAAU,eAEZ8c,WAAYqM,KA9BlB,GCAA,WACE,aAmBA,SAASI,EAAmBpM,GAC1B,MAAO,CACLmM,SAAU,IACVpH,MAAO,CACLjT,MAAO,WACPua,WAAY,YAEd9N,SAAS,EACTuE,SAIF,SAAkBwJ,EAAOC,GACvB,IAAIC,EAAIxpB,EAAEypB,IAAIF,EAAQ,mBAAoB,GAAK,KAE/C,MAAO,CACL,wBAEA,4DACA,6BACA,uFAEA,uDAAuDC,EAAE,8BACzD,sBAAsBA,EAAE,+BACxB,sBAAsBA,EAAE,0CACxB,yBAEA,wBAAwBA,EAAE,qDAAqDA,EAAE,sCAEjF,YAAYA,EAAE,6BACd,6BAEA,2BAA2BA,EAAE,8EAE7B,2BAA2BA,EAAE,4EAE7B,2BAA2BA,EAAE,+FAE7B,2BAA2BA,EAAE,wFAC7B,gBAEA,uCAAuCA,EAAE,+BACzC,mDAAmDA,EAAE,sCACrD,eACA,aACA,WACA,oFACA,8EACA,UACAvd,KAAK,KAxCPyd,KA2CF,SAAc3H,EAAO4H,EAAUC,GAC7B,IAAIC,EAAIC,EAAMC,EAET/pB,EAAEypB,IAAIG,EAAO,qBAGhBC,EAAK,IAAM9H,EAAMjT,MAAMkb,SACvBF,EAAO/H,EAAMjT,MAAM+T,SAAWgH,EAIhB,KAHdE,EAAQ,KAAOhI,EAAMjT,MAAM+T,SAAW,GAAKgH,KAIzCE,EAAQ,IAGVJ,EAASM,IAAI,OAAQH,EAAO,KAC5BH,EAASM,IAAI,QAASF,EAAQ,KACzBhI,EAAMjT,MAAMpK,WAAcqd,EAAMjT,MAAMpK,UAAUwlB,aACnDP,EAASQ,SAAS,SAAWpI,EAAMjT,MAAML,OACzCkb,EAASQ,SAAS,QAAUpI,EAAMjT,MAAM7E,SAItC8X,EAAMjT,MAAMsb,WACdT,EAASQ,SAAS,aAAepI,EAAMjT,MAAMsb,WAE3CrI,EAAMjT,MAAMpK,YAEdilB,EAASQ,SAAS,YAAcpI,EAAMjT,MAAMpK,UAAUE,KACtD+kB,EAASQ,SAAS,sBAAwBpI,EAAMjT,MAAMpK,UAAUE,KAGvB,IAArCmd,EAAMjT,MAAMpK,UAAU2lB,YACxBV,EAASQ,SAAS,yBAGmB,IAAnCpI,EAAMjT,MAAMpK,UAAU4lB,UACxBX,EAASQ,SAAS,2BA1F5Bf,EAAmB1M,QAAU,CAAC,oBAiG9B5d,QACGO,OAAO,oBACP6pB,UAAU,qBAAsBE,GAtHrC,GCAA,WACE,aAqCAtqB,QACGO,OAAO,oBACP6pB,UAAU,qBApBb,WACE,MAAO,CACLC,SAAU,IACVpH,MAAO,CACLlT,OAAQ,YACR3D,IAAK,SACLme,WAAY,YAEdvJ,SAAU,CACR,yBACA,wCACA,qCACA,qBACA,6EACA7T,KAAK,OAlCb,GCAA,WACE,aAeA,SAASse,EAAgB/iB,EAAYjJ,EAAUye,EAAkBrf,EAAUiB,GACzE,MAAO,CACLuqB,SAAU,IACVqB,QAAS,CAAC,iBAAkB,yBAC5Bd,KAGF,SAAc3H,EAAO4H,EAAUC,EAAOa,GACpC,IAAIC,EAAYC,EAAiBC,EAAgBnM,EAAgBoM,EAEjEH,EAAaf,EAAS,GACtBgB,EAAkBF,EAAM,GACxBG,EAAiBH,EAAM,GACvBhM,GAAkB,EAElBkL,EAASQ,SAAS,6CAGlB,IAAIW,EAAsBtjB,EAAWgV,IAAI,qBAWzC,WACE,IAAI5X,EAAKxC,EAAcgoB,EAGvBrI,EAAMjT,MAAQlQ,EAAU+J,QAExBvG,EAAeuoB,EAAgBvoB,kBAG7Bqc,EAAiBrc,EAAa6T,MAC9BrR,EAAMxC,EAAawC,IACnBimB,EAAyB9I,EAAMjT,MAAMmB,eAAe0P,iBAAiB1J,OAGlErR,IACHA,EAAMmd,EAAMjT,MAAMpK,UAAUE,MAG9BwlB,EAAYrI,EAAMjT,MAAMpK,UAAUmK,OAAO,GAAGub,YAE1CT,EAASQ,SAAS,aAAeC,GAGnCT,EAASQ,SAAS,YAAcvlB,KAjC9BmmB,EAAiBvjB,EAAWgV,IAAI,gBA8CpC,WAEE,IAAIwO,EAAWC,EAAY3L,EAAUnJ,EACjC1H,EAAO8Q,EAAU2L,EAAcC,EAInC,GAFAH,GAAY,EAERrtB,EAASyB,OAASzB,EAASyB,MAAMqH,MAAQmkB,EAAenkB,KAAM,CAUhE,GAPAwkB,EAAuC,oBAAxBL,EAAenkB,KAC9B6Y,EAAeyC,EAAMjT,MAAMpK,UAAUwlB,WACrC/T,EAAe4L,EAAMjT,MAAMmB,eAAemP,wBAAwB1P,UAClEjB,EAAesT,EAAMjT,MAAMmB,eAAemP,wBAAwB3Q,MAClEyc,EAAenJ,EAAMjT,MAAMmB,eAAemP,wBAAwBG,SAClE4L,EAAenO,EAAiBxd,mBAAqBiP,EAEjD3P,QAAQ6C,YAAYupB,GACtB,OAqCF,IAnCeC,GADf5L,EAAW2L,KAET3L,EAAW4L,IAEK,EAAdhV,IACEsI,EAAiB,GACjBtI,GAAcwU,EAAgBjb,WAC/ByG,GAAcsI,IACboM,GAA0BpM,IACzBsD,EAAMjT,MAAMpK,UAAUkb,gBAI3BoL,GAAY,EACPC,IACE3L,IAEHyC,EAAMjT,MAAMoB,UA2Ebkb,EA3EsC3c,IAEnC9Q,EAASyB,MAAMisB,eACjB1B,EAASM,IAAI,MAAQxb,EAAQ9Q,EAASyB,MAAMisB,cAAiB,MAC7D1B,EAASM,IAAI,SAAW1K,EAAW5hB,EAASyB,MAAMisB,cAAiB,OAGnE1B,EAASM,IAAI,MAAOtsB,EAASyB,MAAMksB,UAAY,OAEnD3B,EAAS4B,YAAY,YAAcxJ,EAAMjT,MAAMpK,UAAUE,KACzD+kB,EAAS4B,YAAY,yBACrB5B,EAASQ,SAAS,0BAClBpI,EAAMjT,MAAME,SAAU,GAGxBkc,GAAgB3L,EAChBpJ,KAGQ6U,GAAaE,GAAgB/U,GAAcwU,EAAgBjb,YACjE6P,EAAW2L,GACIlO,EAAiBxd,qBAC9B+f,EAAWvC,EAAiBxd,qBACZ,EAAd2W,GAAmBA,GAAcwU,EAAgBjb,YAEnDsb,GAAY,EACPC,IACHtB,EAASM,IAAI,MAAOtsB,EAASyB,MAAMksB,UAAY,MAE3C3tB,EAASyB,MAAMisB,eACjB1B,EAASM,IAAI,SAAW1K,EAAW5hB,EAASyB,MAAMisB,cAAiB,OAEvE1B,EAAS4B,YAAY,0BACrB5B,EAAS4B,YAAY,yBAGrB5B,EAASQ,SAAS,YAAcpI,EAAMjT,MAAMpK,UAAUE,MAExDsmB,GAAgB3L,EAChBpJ,IACA1H,EAAQ,EAELyc,IAECD,EACFtB,EAASQ,SAAS,yBAEV7K,IAERyC,EAAMjT,MAAMqB,QA+BXib,GA/BgC3c,EAAO8Q,GA8BfvC,EAAiBxd,sBAzB5CwrB,EACFrB,EAAS4B,YAAY,WAErB5B,EAASQ,SAAS,aA1IlBqB,EAAoBhkB,EAAWgV,IAAI,mBAmCvC,WAEExc,EAAEyrB,aAAaf,EAAWgB,UAAW,SAASC,GACxC,aAAa7D,KAAK6D,IACpBhC,EAAS4B,YAAYI,KAGzBhC,EAASQ,SAAS,aAmGpB,SAASiB,EAAaQ,GACpB,IAAIC,EAAS9E,EAAO+E,EAUpB,OARAD,EAAqB,GAAXD,GACV7E,EAAQ1V,KAAK0a,MAAMF,EAAU,KACjB,KACR9E,EAAQ,IAAMA,IAClB+E,EAAOD,EAAU,IACN,KACPC,EAAO,IAAMA,GAEL/E,EAAQ,IAAM+E,EArJ5B/J,EAAMvF,IAAI,WAAY,WACpBsO,IACAC,IACAS,QA3BNjB,EAAgB7N,QAAU,CAAC,aAAc,WAAY,mBAAoB,WAAY,aA2LrF5d,QACGO,OAAO,oBACP6pB,UAAU,kBAAmBqB,GA5MlC,GCAA,WACE,aAmBA,SAASyB,EAAoBhP,GAC3B,MAAO,CACLmM,SAAU,IACVpH,MAAO,CACLrd,UAAW,eACXunB,eAAgB,YAElB1Q,SAAS,EACTuE,SAIF,SAAkBwJ,EAAOC,GACvB,MAAO,CACL,wBACA,mFAEA,8EACA,qDACA,gEAEA,4GAEA,kCACA,6BAEA,kGAEA,gGAEA,mHAEA,4GACA,gBAEA,gEACA,uFACA,eAEA,+DACA,kFACA,eACA,UACAtd,KAAK,KAlCPyd,KAqCF,SAAc3H,EAAO4H,EAAUC,GAMzB7H,EAAMrd,UAAU+Y,UAClBkM,EAASQ,SAAS,gBAGhBpI,EAAMrd,UAAUwnB,WAClBvC,EAASQ,SAAS,aAAepI,EAAMrd,UAAUwnB,WAGnDvC,EAASQ,SAAS,YAAcpI,EAAMrd,UAAUE,KAChD+kB,EAASQ,SAAS,sBAAwBpI,EAAMrd,UAAUE,KAGvB,IAA/Bmd,EAAMrd,UAAU2lB,YAClBV,EAASQ,SAAS,yBAGa,IAA7BpI,EAAMrd,UAAU4lB,UAClBX,EAASQ,SAAS,yBAtExB6B,EAAoBtP,QAAU,CAAC,oBA0E/B5d,QACGO,OAAO,oBACP6pB,UAAU,sBAAuB8C,GA/FtC,GCAA,WAsDE,SAASG,EAA6B3kB,EAAYgT,EAAQ4R,EAAU7tB,EAAU+iB,EAAU+K,EAAUC,EAAUC,EAAYC,EAAYzP,EAAQpf,GAC1I,IAAI8uB,EAAQ5uB,KAGZA,KAAKqe,QAAU,WACbre,KAAK6uB,UAAW,GAIlB7uB,KAAK8uB,UAAY,WACf9uB,KAAK+uB,iBAAmBR,EAASnsB,KAAK,KAAK,GAC3CpC,KAAKgvB,aAAehvB,KAAK+uB,iBAAiBE,uBAAuB,oBACjEjvB,KAAKkvB,eAAiBX,EAASnsB,KAAK,sBAAsB,GAC1DpC,KAAKmvB,aAAeZ,EAASnsB,KAAK,SAAS,GAC3CpC,KAAKovB,kBAAoBjtB,EAAEktB,KAAKd,EAASnsB,KAAK,YAC9CpC,KAAKsvB,sBAIPtvB,KAAKsvB,mBAAqB,WACxBntB,EAAE0B,QAAQ7D,KAAKgvB,aAAc,SAASvtB,GACpCA,EAAE8tB,UAAYX,EAAM5sB,SAAS9B,QAKjCF,KAAKwvB,WAAa,SAASpS,GACzBA,EAAOuF,kBACPvF,EAAOsF,iBACP1iB,KAAK6uB,UAAW,EAChB7uB,KAAKmvB,aAAaztB,MAAQ1B,KAAKgC,SAAS9B,KACxCF,KAAK+uB,iBAAiBlB,UAAU4B,IAAI,WACpCzvB,KAAKkvB,eAAerB,UAAU1lB,OAAO,WACjCiV,EAAOsS,UAAoC,YAAxBtS,EAAOsS,SAAS9mB,KACrClI,EAAS,WACPkuB,EAAMO,aAAalQ,QACnB2P,EAAMO,aAAaQ,UAClB,MAGH3vB,KAAKmvB,aAAaQ,SAClB3vB,KAAKmvB,aAAalQ,SAEhBjf,KAAK4vB,OACP5vB,KAAK4vB,MAAMjI,SAKf3nB,KAAK6vB,WAAa,SAASzS,GACrBpd,KAAKmvB,aAAaW,WAGtB9vB,KAAKgC,SAAS9B,KAAOF,KAAKmvB,aAAaztB,MACvC1B,KAAKmvB,aAAaW,UAAW,EAC7B9vB,KAAKgC,SAASgG,UACXhE,KAAK,SAASN,GACbkrB,EAAMC,UAAW,EACjBD,EAAMM,eAAerB,UAAU4B,IAAI,WACnCb,EAAMG,iBAAiBlB,UAAU1lB,OAAO,WACxCymB,EAAMU,sBACL,WACDV,EAAMC,UAAW,EACjBD,EAAMO,aAAaztB,MAAQktB,EAAM5sB,SAAS9B,KAC1CQ,EAAS,WACPkuB,EAAMO,aAAalQ,QACnB2P,EAAMO,aAAaQ,UAClB,OAEJhO,QAAQ,WACPiN,EAAMO,aAAaW,UAAW,MAKpC9vB,KAAK+vB,cAAgB,WACnB/vB,KAAK6uB,UAAW,EAChB7uB,KAAK+uB,iBAAiBlB,UAAU1lB,OAAO,WACvCnI,KAAKkvB,eAAerB,UAAU4B,IAAI,WAClCzvB,KAAKmvB,aAAaztB,MAAQ1B,KAAKgC,SAAS9B,MAI1CF,KAAKgwB,cAAgB,WACfhwB,KAAKgC,SAASY,eAEhB5C,KAAKgC,SAASkG,UACXwP,MAAM,SAAShU,EAAMyC,GACpB+Y,EAAO+Q,MAAMzpB,EAAE,uDAAwDooB,EAAM5sB,SAAS9B,MACzEsG,EAAE9C,EAAKwY,UAIxBgD,EAAO2D,QAAQrc,EAAE,WAAYA,EAAE,uDAAwDxG,KAAKgC,SAAS9B,MACtF,CAAE4iB,GAAItc,EAAE,YACpBxC,KAAK,WACJ4qB,EAAM5sB,SAASkG,UACZwP,MAAM,SAAShU,EAAMyC,GACpB+Y,EAAO+Q,MAAMzpB,EAAE,uDAAwDooB,EAAM5sB,SAAS9B,MACzEsG,EAAE9C,EAAKwY,aAOhClc,KAAKkwB,SAAW,SAAS9S,GACvB,IAAI+S,EAAgB3B,EAAS4B,mBACxBC,WAAWrwB,KAAKovB,mBAChBkB,iBACC9B,EAAS+B,UAAUC,YACnBhC,EAASiC,UAAUC,YAGrBC,EAAiBnC,EAASoC,oBACzBC,SAAS7wB,KAAKovB,mBACd1N,SAAS,KACToP,cAActC,EAASuC,UAAUC,MAElCC,EAAS,CACXC,SAAUjwB,QAAQ6c,QAAQkC,SAASC,MACnCK,OAAQ,CACN6Q,SAAUnxB,KACVgC,SAAUhC,KAAKgC,SACfwtB,WAAYvuB,QAAQ2L,KAAK5M,KAAMA,KAAKwvB,YACpCQ,cAAe/uB,QAAQ2L,KAAK5M,KAAMA,KAAKgwB,gBAEzCoB,kBAAkB,EAClBtS,WAAYuS,EACZhR,aAAc,YACd2E,SAAUmL,EACVY,UAAWJ,EACXzQ,YAAa9C,EACbyC,YAAa,kBACbyR,WAAW,EACXnR,qBAAqB,EACrBC,eAAe,EACfmR,aAAa,GAaf,SAASF,EAAeG,EAAYxS,EAAWyS,EAAc5nB,GAC3D,IAAI6nB,EAAY1xB,KAEhBA,KAAK2xB,SAAW,WACdxvB,EAAE0B,QAAQ/D,EAASuC,WAAY,SAASW,GAClC0uB,EAAU1vB,SAAS7B,IAAM6C,EAAE7C,GAC7B6C,EAAEV,OAAS,EAEXU,EAAEV,OAAS,KAIjBtC,KAAK4xB,QAAU,WACbzvB,EAAE0B,QAAQ/D,EAASuC,WAAY,SAASW,GAAKA,EAAEV,OAAS,KAG1DtC,KAAK6xB,eAAiB,WACpB,IAAIvqB,EAAQtH,KAAKgC,SAASsF,MAmB1B,SAASwqB,EAA2BnV,EAAQqC,EAAW+S,GACrD,IAAI9U,EAAKjd,KAETid,EAAGjb,SAAW,IAAIlC,EAASiyB,EAAYrqB,SACvCuV,EAAG+U,eAOH,SAAwBzN,GAClBA,EAAKC,SACPvH,EAAGjb,SAASiG,QAEZ8pB,EAAY9xB,KAAKgd,EAAGjb,SAAS0F,SAC7BsX,EAAUgC,SAXd/D,EAAG0K,MAeH,WACE3I,EAAUxS,UAdZmQ,EAAOqJ,OAAO,WAAa,OAAO/I,EAAGjb,SAASsF,OAAU,WACtDyqB,EAAYzqB,MAAQ2V,EAAGjb,SAASsF,QA1BpC0X,EAAUc,KAAK,CACbD,YAAa7f,KAAKgC,SAAS7B,GAAK,cAChC2e,WAAYgT,EACZzR,aAAc,aACdF,qBAAqB,EACrBC,eAAe,EACfE,OAAQ,CACNyR,YAAa/xB,KAAKgC,YAEnB0V,MAAM,WAEPga,EAAU1vB,SAASsF,MAAQA,IAM7BwqB,EAA2BjT,QAAU,CAAC,SAAU,YAAa,gBA2B/D7e,KAAKiyB,UAAY,WAiBf,SAASC,EAAsBlT,EAAWhd,GAC/BhC,KACNgC,SAAWA,EADLhC,KAEN2nB,MAEH,WACE3I,EAAUgC,QAtBdhC,EAAUc,KAAK,CACbC,OAAQ9e,QAAQ6c,QAAQkC,SAASC,MACjCE,qBAAqB,EACrBC,eAAe,EACfP,YAAa7f,KAAKgC,SAAS7B,GAAK,SAChC2e,WAAYoT,EACZ7R,aAAc,QACdC,OAAQ,CACNte,SAAUhC,KAAKgC,YAOnBkwB,EAAsBrT,QAAU,CAAC,YAAa,aAYhD7e,KAAKmyB,eAAiB,WAkBpB,SAASC,EAA+BlO,EAAOlF,EAAWqT,GA8CxD,SAASC,EAAkBC,GACzB,IAAIC,EAA2C,IAA9BD,EAAK3pB,KAAK/D,QAAQ,SAC/B,WAAWolB,KAAKsI,EAAKryB,MAgBzB,OAdKsyB,GACH/O,EAAS3D,KAAK,CACZmC,SAAU,CACR,aACA,mCACA,gEACA,aAAezb,EAAE,oCAAsC,UACvD,WACA,eACA4H,KAAK,IACP4W,SAAU,YACVC,UAAW,MAGRuN,EA/DAxyB,KAENyyB,SAAW,IAAIhB,EAAa,CAC7BrsB,IAAKstB,mBAAqB,CAACL,EAAOlyB,GAAI,UAAUiO,KAAK,KACrDukB,YAAY,EACZC,WAAY,EACZC,QAAS,CAAC,CAAE3yB,KAAMoyB,EAAmBQ,GAAIR,IACzCS,cAAe,SAASR,EAAMrsB,EAAUC,EAAQ6sB,GAC9C,IAAIC,EAEJjU,EAAUgC,OAEgB,IAAtB9a,EAASgtB,SACXD,EAAMzsB,EAAE,2BAERysB,EAAMzsB,EAAE,wDAAyDN,EAASgtB,UAC1EvpB,EAAWkD,MAAM,mBAGnB4W,EAAS3D,KACP2D,EAASqB,SACNC,QAAQkO,GACRjO,SAAS,aACTC,UAAU,OAEjBkO,YAAa,SAASZ,EAAMrsB,EAAUC,EAAQ6sB,GAC5CvP,EAAS3D,KAAK,CACZmC,SAAU,CACR,aACA,mCACA,gEACA,aAAezb,EAAE,+CAAiD,UAClE,WACA,eACA4H,KAAK,IACP4W,SAAU,YACVC,UAAW,SApCRjlB,KAyCN2nB,MAAQ,WACT3I,EAAUgC,QA5DdhC,EAAUc,KAAK,CACbC,OAAQ9e,QAAQ6c,QAAQkC,SAASC,MACjCC,YAAa9C,EACb+C,qBAAqB,EACrBC,eAAe,EACfP,YAAa,0BACbf,WAAYsT,EACZ/R,aAAc,kCACdC,OAAQ,CACN+R,OAAQryB,KAAKgC,YAOjBowB,EAA+BvT,QAAU,CAAC,QAAS,YAAa,WAsElE7e,KAAKozB,MAAQ,WAEXpzB,KAAKgC,SAASuF,KAAK8rB,SAASrvB,KAAK,WAE/Bgb,EAAUc,KAAK,CACbD,YAAa6R,EAAU1vB,SAAS7B,GAAK,gBACrC2e,WAAY,gBACZuB,aAAc,MACdF,qBAAqB,EACrBC,eAAe,EACfE,OAAQ,CACNgT,aAAc5B,EAAU1vB,SAASuF,KAAKgsB,MACtC1pB,KAAMA,EACNwoB,OAAQX,EAAU1vB,eAxM5BwsB,EAAS1lB,KAAKmoB,GACXjtB,KAAK,SAASwvB,IACb5E,EAAMgB,MAAQ4D,GAELC,QAAQC,IAAI,QAAS,WAC5BF,EAAS7L,YAIf0J,EAAexS,QAAU,CAAC,aAAc,YAAa,eAAgB,SAtJzEyP,EAA6BzP,QAAU,CAAC,aAAc,SAAU,WAAY,WAAY,WAAY,WAAY,WAAY,aAAc,aAAc,SAAU,YAkWlK5d,QACGO,OAAO,oBACPsd,WAAW,+BAAgCwP,GAC3CjD,UAAU,qBApZb,WACE,MAAO,CACLC,SAAU,IACVpH,MAAO,GACPkN,iBAAkB,CAChBpvB,SAAU,eAEZigB,SAAU,CACR,8CACA,mEACA,+BACA,gCACA,0BAA4Bzb,EAAE,UAAY,iBAC1C,0BACA,6CACA,gDACA,2EACA,gCACA,mCACA,4DACA,2CACA,yCACA,iDACA,OACA,+CACA,4CACA,wBAA0BA,EAAE,wBAA0B,IACtD,8CACA,+CACA,gDACA,wBACA,kDACA,gEACA,yEACA,eACA,iDACA,6CACA,wBAA0BA,EAAE,WAAa,yBACzC4H,KAAK,IACP0Q,WAAY,+BACZuB,aAAc,WA9CpB,GCAA,WACE,aAqCApf,QACGO,OAAO,oBACP6pB,UAAU,qBApBb,WACE,MAAO,CACLC,SAAU,IACVpH,MAAO,CACLlT,OAAQ,YACR3D,IAAK,SACLme,WAAY,YAEdvJ,SAAU,CACR,2BACA,wCACA,qCACA,qBACA,6EACA7T,KAAK,OAlCb,GCAA,WACE,aAiFAnN,QACGO,OAAO,oBACP6pB,UAAU,uBArEb,WACE,MAAO,CACLC,SAAU,IACVpH,MAAO,CACLjT,MAAO,WACPua,WAAY,YAEd9N,SAAS,EACTuE,SAIF,SAAkBwJ,EAAOC,GACvB,IAAIC,EAAIxpB,EAAEypB,IAAIF,EAAQ,mBAAoB,GAAK,KAE/C,MAAO,CACL,wBAEA,2DACA,qFAEA,qDAAqDC,EAAE,8BACvD,oBAAoBA,EAAE,+BACtB,oBAAoBA,EAAE,0CACtB,oCAAoCA,EAAE,sDAAsDA,EAAE,sCAE9F,oBAAoBA,EAAE,qDAAqDA,EAAE,sCAE7E,QAAQA,EAAE,6BACV,yBAEA,uBAAuBA,EAAE,8EAEzB,uBAAuBA,EAAE,4EAEzB,uBAAuBA,EAAE,+FAEzB,uBAAuBA,EAAE,wFACzB,YACA,UACAvd,KAAK,KA/BPyd,KAkCF,SAAc3H,EAAO4H,EAAUC,GACxB5pB,EAAEypB,IAAIG,EAAO,qBAGZ7H,EAAMjT,MAAMsb,WACdT,EAASQ,SAAS,aAAepI,EAAMjT,MAAMsb,WAE3CrI,EAAMjT,MAAMpK,YAEdilB,EAASQ,SAAS,YAAcpI,EAAMjT,MAAMpK,UAAUE,KAGb,IAArCmd,EAAMjT,MAAMpK,UAAU2lB,YACxBV,EAASQ,SAAS,yBAGmB,IAAnCpI,EAAMjT,MAAMpK,UAAU4lB,UACxBX,EAASQ,SAAS,6BA3E9B,GCAA,WAEE,aAeA,SAASqH,EAAqBhqB,EAAY6Z,EAASoQ,EAAWnzB,EAAIC,EAAUmzB,EAAY/zB,EAAUiB,EAAWD,GAC3G,MAAO,CACLwqB,SAAU,IACVpH,MAAO,CACLtb,KAAM,yBAERkW,WAAYgV,EACZjI,KAAM,SAAS3H,EAAOpG,EAASiO,EAAOjN,GACpC,IAAIjQ,EAAMjG,EAAMmrB,EA0ChB,SAASC,EAAazF,EAAU3lB,GAC9B5I,KAAKuuB,SAAWA,EAChBvuB,KAAK8d,QAAUyQ,EAAS,GACxBvuB,KAAK4I,KAAOA,EACZ5I,KAAKwtB,cAAgBxtB,KAAKi0B,mBAC1Bj0B,KAAKk0B,WAAa,EAAIl0B,KAAKwtB,cAC3BxtB,KAAK8P,WAAa9P,KAAKm0B,gBACvBn0B,KAAKo0B,KAAOp0B,KAAKq0B,gBAGjBr0B,KAAKitB,oBAAsBtjB,EAAWgV,IAAI,qBAAsB1d,QAAQ2L,KAAK5M,KAAMA,KAAKs0B,cACxFt0B,KAAKu0B,mBAAqB5qB,EAAWgV,IAAI,mBAAoB1d,QAAQ2L,KAAK5M,KAAMA,KAAKw0B,YAErFx0B,KAAKy0B,wBAA0BxzB,QAAQ2L,KAAK5M,KAAMA,KAAK00B,mBACvD10B,KAAK20B,+BAAiC1zB,QAAQ2L,KAAK5M,KAAMA,KAAK40B,0BAG9D50B,KAAK00B,oBACLzzB,QAAQ6c,QAAQ0F,GAASqR,GAAG,SAAU70B,KAAKy0B,yBA1D7C5lB,EAAO,KACPjG,EAAOsb,EAAMtb,KACbmrB,EAA4C,sBAA3BjW,EAAQE,KAAK,WAI9Bc,EAAWiV,cAAgBA,EAG3BrzB,EASA,WAKI,IAAI+R,EAAMqiB,EAAUC,EAJtBlmB,EAAO,IAAImlB,EAAalW,EAASlV,GAErB,WAARA,GAGE9H,EAAYmB,SAAS+yB,mBACvBviB,EAAO3R,EAAYmB,SAAS+yB,iBAAiBriB,MAAM,KACnDmiB,EAAW9U,SAASiV,eAAe,OAAS/pB,SAASuH,EAAK,KAC1DsiB,EAAiB7pB,SAASuH,EAAK,IAAM5D,EAAK2e,cAC1C3e,EAAKiP,QAAQoX,UAAYJ,EAASK,UAAYJ,GAMlDjW,EAAW0O,cAAgB3e,EAAK2e,gBAtBlCtJ,EAAMvF,IAAI,WAAY,WAChB9P,GACFA,EAAKumB,aA+CTpB,EAAa3sB,UAAY,CAEvB+tB,SAAU,WACRp1B,KAAKitB,sBACLjtB,KAAKu0B,qBACLv0B,KAAKuuB,SAAS8G,IAAI,YAAar1B,KAAK20B,gCACpC1zB,QAAQ6c,QAAQ0F,GAAS6R,IAAI,SAAUr1B,KAAKy0B,0BAG9CH,YAAa,WACXt0B,KAAKuuB,SAASsG,GAAG,YAAa70B,KAAK20B,gCACnC30B,KAAK00B,oBACL10B,KAAK40B,4BAGPJ,UAAW,WACTx0B,KAAKuuB,SAAS8G,IAAI,YAAar1B,KAAK20B,gCACpC70B,EAASyB,MAAQ,MAGnB0yB,iBAAkB,WAChB,IAAIqB,EAAOC,EAAQC,EAAS,KAO5B,OALAF,EAAQtV,SAASiV,eAAe,SAChCM,EAASvV,SAASiV,eAAe,UAC7BK,GAASC,IACXC,GAAWD,EAAOJ,UAAYG,EAAMH,WAAa,IAE5CK,GAITC,iBAAkB,SAASC,GACzB,IAAIC,EAAOH,EAAQI,EAAYnI,EAAWoI,EAAOC,EAASC,EAe1D,OAbAP,EAASG,EAAQC,EAAanI,EAAY,EAGvB,GAFnBoI,EAAQ71B,KAAK8d,QAAQmR,uBAAuB,QAElC7iB,SAERopB,GADAM,EAAUD,EAAM,GAAGG,yBACFR,OACjBG,EAAQG,EAAQH,MAChBC,EAAaE,EAAQ7J,KAAOyJ,EAEJ,GADxBK,EAAaF,EAAM,GAAG5G,uBAAuB,4BAC9B7iB,SACbqhB,EAAYsI,EAAW,GAAGE,eAGvB,CAAET,OAAQA,EAAQG,MAAOA,EAAOO,OAAQ,CAAEjK,KAAM2J,EAAYO,IAAK1I,KAI1E0G,cAAe,WACb,IAAqBxiB,EAIrB,OAFAA,EAAO3R,KAAK8d,QAAQsY,qBAAqB,mBAElCj0B,EAAE2C,IAAI6M,EAAM,SAAS0kB,EAAIje,GAC9B,OAAI2b,EACK3b,EAEAlN,SAASmrB,EAAGC,WAAW,iBAAiB50B,UAKrD2yB,cAAe,WACb,IAAIkC,EAAYC,EAAM,EAUtB,MARiB,WAAbx2B,KAAK4I,MACP2tB,EAAav2B,KAAK8d,QAAQsY,qBAAqB,gBAAgB,GAC/DI,EAAMtrB,SAASqrB,EAAWD,WAAW,WAAW50B,OAAS,GAGzD80B,EAAMx2B,KAAK8d,QAAQmR,uBAAuB,OAAO7iB,OAAS,EAGrDoqB,GAKT9B,kBAAmB,WACjB,IAAIoB,EAASW,EAEbX,EAAU91B,KAAK8d,QAAQkY,wBACvBS,EAAgBz2B,KAAKy1B,iBAAiBK,EAAQ7J,MAE9ChrB,QAAQC,OAAOlB,KAAM,CACnB2gB,YAAa,CACX+V,EAAGZ,EAAQ7J,KACX0K,EAAGb,EAAQK,KAEbS,UAAWH,EAAcjB,OACzBqB,SAAUJ,EAAcd,MACxBmB,WAAYL,EAAcP,OAAOjK,KACjCwB,UAAWgJ,EAAcP,OAAOC,OAMpCvB,yBAA0B,WACxB,IAAIxiB,EAAgB2kB,EAAoB5pB,EAAK6pB,EAASC,EAAM5jB,EAE5DjB,EAAiBrR,EAAU+J,OAAOsH,eAC9BpS,KAAK2gB,aAAevO,IACtB2kB,EAAqB3kB,EAAe8kB,6BAA6Bl3B,SAI/DF,EAASyB,MAAQvB,KACjBmN,GAAM,IAAIC,MAAOkC,YACZtP,KAAKm3B,YAAchqB,EAAMnN,KAAKm3B,WAAa,OAC9Cn3B,KAAKm3B,WAAahqB,GAClB6pB,EAAUD,EAAmBJ,EAAI32B,KAAKk0B,YACxB,GAER8C,GADJC,GAAQj3B,KAAK8d,QAAQoX,aAEnB8B,EAAUC,GACZj3B,KAAK8d,QAAQoX,WAAa8B,GAKd,GADZ3jB,GADA2jB,EAAUD,EAAmBJ,EAAI32B,KAAKk0B,YACpBl0B,KAAK8d,QAAQmY,gBAE7Bj2B,KAAK8d,QAAQoX,WAAa7hB,SAe9C,SAASygB,EAA+BnX,GAGtC3c,KAAK4I,KAAO+T,EAAO/T,KAxNrB+qB,EAAqB9U,QAAU,CAAC,aAAc,UAAW,YAAa,KAAM,WAAY,aAAc,WAAY,YAAa,eAoN/HiV,EAA+BjV,QAAU,CAAC,UAO1C5d,QACGO,OAAO,oBACP6pB,UAAU,uBAAwBsI,GA7OvC,GCAA,WAEE,aAoCA1yB,QACGO,OAAO,oBACP6pB,UAAU,uBAzBb,WACE,MAAO,CACLC,SAAU,IACVqB,QAAS,UACTzI,MAAO,CACLkT,QAAS,KAEX1Z,SAAS,EACTuE,SAAU,CACR,0BAEA,mCACA,wDACA,MAEA,oCACA,oDACA,MACA,YACA7T,KAAK,OAlCb,GCAA,WACE,aAYA,SAASipB,EAAyB1tB,EAAYjJ,EAAUC,EAAMG,EAAahB,EAAUqf,EAAkBpe,GACrG,MAAO,CACLuqB,SAAU,KACVqB,QAAS,iBACTd,KAGF,SAAc3H,EAAOpG,EAASiO,EAAOe,GACnC,GAAI5I,EAAMjT,MAAO,CACf,IAAIiT,EAAMjT,MAAMpK,UAAUsgB,UAAajD,EAAMjT,MAAMsb,UAMjD,YADAzO,EAAQ4P,YAAY,gCAcxB,WACE,IAAI7mB,EAAW+K,EAAU0lB,EAAYC,EAAcC,EAC/CC,EAAUC,EAAUC,EAAWC,EAASC,EAG5C,GAAI3T,EAAMjT,MAAM7E,OAAS,EAAG,OAE5BvF,EAAYqd,EAAMjT,MAAMpK,UACxB+K,EAAWsS,EAAMjT,MAAMW,SACvB0lB,EAAan1B,EAAEY,UAAU8D,EAAUmK,OAAQ,CAAC,WAAYY,IACxD2lB,EAA+B,IAAfD,EAChBE,EAAeF,IAAezwB,EAAUmK,OAAO5E,OAAS,GAExDqrB,EAAWx2B,QAAQ6c,QAAQ,iCAClBwO,SAAS,aAAezlB,EAAUE,KAEvCF,EAAUwlB,YACwB,0BAAlCvO,EAAQ,GAAGga,WAAWC,SACpBR,IACFG,EAAWz2B,QAAQ6c,QAAQ,qCAAqCka,OAAOP,GACvE3Z,EAAQka,OAAON,IAEbF,IACFG,EAAY12B,QAAQ6c,QAAQ,sCAAsCka,OAAOP,EAASQ,SAClFna,EAAQka,OAAOL,MAIbJ,IACFK,EAAU32B,QAAQ6c,QAAQ,oCAAoCka,OAAOP,GACrE3Z,EAAQka,OAAOJ,IAEbJ,IACFK,EAAa52B,QAAQ6c,QAAQ,uCAAuCka,OAAOP,EAASQ,SACpFna,EAAQka,OAAOH,KAnDjBK,GAwDJ,SAASC,EAAavU,GACpB,IAAIwU,EAAUhmB,EAAsCimB,EAAMC,EAE1D1U,EAAGjB,kBAEoBiB,EAAG2U,OAAOC,aAAe5U,EAAG2U,OAAOtC,aAAe,IAIvEoC,EAAOzU,EAAG2U,OAAOvC,wBACjBsC,EAAiBD,EAAKpM,KAAOoM,EAAK1C,MAAQ,GACtC/R,EAAG6U,MAAQH,KAIjBF,EAAW,aAEPlU,EAAMjT,OAASiT,EAAMjT,MAAMpK,UAEF,gBAAvB+c,EAAG2U,OAAOG,WACa,iBAAvB9U,EAAG2U,OAAOG,UACZN,EAAW,eACmB,mBAAvBxU,EAAG2U,OAAOG,WACa,kBAAvB9U,EAAG2U,OAAOG,YACjBN,EAAW,cAIbA,EAAW,cAIbhmB,EAAiB,IAAIumB,EAA4BP,IAClCQ,cAAchV,GAG7B7iB,EAAU+J,OAAOsH,eAAiBA,EAGlCnR,QAAQ6c,QAAQkC,UAAU0T,IAAI,UAAWc,GAGzCvzB,QAAQ6c,QAAQkC,UAAU6U,GAAG,YAAagE,IA+D5C,SAASA,EAAOjV,GACd,IAAIxR,EAAiBrR,EAAU+J,OAAOsH,eAMtC1R,EAAS,WACP0R,EAAe0mB,gBAAgBlV,KAInC,SAAS4Q,EAAU5Q,GACjB,IAAI3S,EAAO8nB,EAEX9nB,EAAQiT,EAAMjT,MACd8nB,EAAUh4B,EAAU+J,OAAOsH,eAG3BnR,QAAQ6c,QAAQkC,UAAUqV,IAAI,YAAawD,GAEvCE,EAAQC,iBACVrvB,EAAWkD,MAAM,oBACjBksB,EAAQC,gBAAiB,GAIvB/nB,GAASA,EAAMpK,WACjB1E,EAAE0B,QAAQoN,EAAMpK,UAAUmK,OAAQ,SAASioB,GACzCA,EAAEC,UAAW,IAOnB,SAASC,KAqCT,SAASC,EAA8BC,GACrCr5B,KAAKs5B,aAAaD,GAwFpB,SAASV,EAA4BP,GACnCp4B,KAAKo4B,SAAWA,EA3TlBta,EAAQ+W,GAAG,YAAasD,GAGxBjU,EAAMvF,IAAI,WAAY,WACpBb,EAAQuX,IAAI,YAAa8C,GACzBra,EAAQuX,IAAI,YAAawD,KA0L3BM,EAAgB9xB,UAAY,CAC1BqvB,GAAI,EACJC,GAAI,EAEJ/U,SAAU,SAAqB2X,GAC7B,IAAIlmB,EAAQ,IAAI8lB,EAQhB,OAPA9lB,EAAMqjB,EAAI12B,KAAK02B,EAAI6C,EAAiB7C,EACpCrjB,EAAMsjB,EAAI32B,KAAK22B,EAAI4C,EAAiB5C,EAEhC72B,EAASyB,QACX8R,EAAM1B,KAAO7R,EAASyB,MAAMuO,WAAW9P,KAAK02B,GAAK52B,EAASyB,MAAMuO,WAAWypB,EAAiB7C,IAGvFrjB,GAGTmmB,YAAa,SAAwBD,GACnC,IAAIlmB,EAAQrT,KAAK4hB,SAAS2X,GAE1B,OAAO/lB,KAAKimB,KAAKpmB,EAAMqjB,EAAIrjB,EAAMqjB,EAAIrjB,EAAMsjB,EAAItjB,EAAMsjB,IAGvDsB,MAAO,WACL,IAAItX,EAAc,IAAIwY,EAItB,OAHAxY,EAAY+V,EAAI12B,KAAK02B,EACrB/V,EAAYgW,EAAI32B,KAAK22B,EAEdhW,IAWXyY,EAA8B/xB,UAAY,CACxCwK,WAAY,EACZ6nB,SAAU,EACV9oB,OAAQ,EACR8Q,UAAW,EAEX2X,UAAW,KAEXC,aAAc,SAASD,GACrBr5B,KAAKq5B,UAAYA,GAGnBM,cAAe,SAAS1oB,GACtB,IAAI2oB,GAAiB,EAEE,YAAnB55B,KAAKq5B,WACPr5B,KAAK4Q,MAAQ,EACb5Q,KAAK0hB,SAAWzQ,EAAMpK,UAAUmK,OAAO5E,OAAS+S,EAAiBxd,qBAKjE3B,KAAK4Q,MAAQK,EAAMpK,UAAUmK,OAAO,GAAGJ,MACvC5Q,KAAK0hB,SAAWvf,EAAE03B,MAAM5oB,EAAMpK,UAAUmK,OAAQ,SAASioB,GACvD,IAAI5lB,EAAOymB,EASX,OAPAA,EAAmBb,EAAEpnB,UAEnBwB,EADEumB,EAAgB,EACV,EAEAE,EAAmBF,EAAgB,EAC7CA,EAAgBE,EAETb,EAAE7sB,OAASiH,EAAQ8L,EAAiBxd,uBAKjDo4B,iBAAkB,SAASnZ,GACzB5gB,KAAK6R,UAAY+O,GAGnBgB,SAAU,SAAS2X,GACjB,IAAIlmB,EAAQ,IAAI+lB,EAKhB,OAJA/lB,EAAMxB,UAAa7R,KAAK6R,UAAY0nB,EAAiB1nB,UACrDwB,EAAMzC,MAAS5Q,KAAK4Q,MAAQ2oB,EAAiB3oB,MAC7CyC,EAAMqO,SAAY1hB,KAAK0hB,SAAW6X,EAAiB7X,SAE5CrO,GAGT2mB,cAAe,SAASjM,GACtB,IAAIC,EAAqB,GAAXD,EACV7E,EAAQ1V,KAAK0a,MAAMF,EAAU,IAC7B9E,EAAQ,KACVA,EAAQ,IAAMA,GAChB,IAAI+E,EAAOD,EAAU,GAIrB,OAHIC,EAAO,KACTA,EAAO,IAAMA,GAEH/E,EAAQ,IAAM+E,GAG5BgM,aAAc,WACZ,OAAOj6B,KAAKg6B,cAAch6B,KAAK4Q,QAGjCspB,WAAY,WACV,IAAIvmB,GAAO3T,KAAK4Q,MAAQ5Q,KAAK0hB,UAAYvC,EAAiBxd,mBAC1D,OAAO3B,KAAKg6B,cAAcrmB,IAG5BskB,MAAO,WACL,IAAItX,EAAc,IAAIyY,EAKtB,OAJAzY,EAAY9O,UAAY7R,KAAK6R,UAC7B8O,EAAY/P,MAAQ5Q,KAAK4Q,MACzB+P,EAAYe,SAAW1hB,KAAK0hB,SAErBf,IAWXgY,EAA4BtxB,UAAY,CAEtC8yB,oBAAqB,KACrBC,mBAAoB,KAGpBC,wBAAyB,KACzBC,uBAAwB,KAGxBzY,yBAA0B,KAC1BN,wBAAyB,KAEzBO,iBAAkB,KAElBkX,gBAAgB,EAIhBuB,wBAAyB,KAEzBZ,cAAe,SAA6B1oB,GAC1CjR,KAAKuhB,wBAA0B,IAAI6X,EAA8Bp5B,KAAKq5B,WACtEr5B,KAAK6hB,yBAA2B,IAAIuX,EAA8Bp5B,KAAKq5B,WACvEr5B,KAAK6hB,yBAAyB8X,cAAc1oB,IAG9C2nB,cAAe,SAA6B1sB,GAC1ClM,KAAKo6B,mBAAqB,IAAIjB,EAC9Bn5B,KAAK84B,gBAAgB5sB,GACrBlM,KAAKm6B,oBAAsBn6B,KAAKo6B,mBAAmBnC,SAGrD8B,iBAAkB,SAAgCx1B,GAChDvE,KAAK8hB,iBAAmBvd,EACxBvE,KAAKuhB,wBAAwBwY,iBAAiBx1B,EAAa6T,OAC3DpY,KAAK6hB,yBAAyBkY,iBAAiBx1B,EAAa6T,QAI9D0gB,gBAAiB,SAA+B5sB,GAM9C,GAJAlM,KAAKo6B,mBAAmB1D,EAAIxqB,EAAMusB,MAClCz4B,KAAKo6B,mBAAmBzD,EAAIzqB,EAAMsuB,MAG9Bx6B,KAAKg5B,gBAAkBl5B,EAASyB,MAAO,CACzC,IAAIk5B,EAAsBz6B,KAAKu6B,wBAAwBz6B,EAASyB,OAC3DvB,KAAKq6B,0BACRr6B,KAAKq6B,wBAA0Br6B,KAAKu6B,wBAAwBz6B,EAASyB,MAAOvB,KAAKm6B,qBAC7Ep5B,EAAU+J,OAAOjE,UAAU6C,QAC7B1J,KAAK06B,oBAAoB35B,EAAU+J,OAAOjE,UAAU+J,MAAO5Q,KAAKq6B,wBAAwB1D,GACxFh2B,EAAKkF,MAAM,wBAA0B9E,EAAU+J,OAAOjE,UAAU+J,SAG/D5Q,KAAKs6B,wBACLG,GACDA,EAAoB/D,GAAK12B,KAAKs6B,uBAAuB5D,GACrD+D,EAAoB9D,GAAK32B,KAAKs6B,uBAAuB3D,IACvD32B,KAAKs6B,uBAAyBG,EAC1Bz6B,KAAKq6B,0BACFI,IACHz6B,KAAKs6B,uBAAyBt6B,KAAKq6B,wBAAwBpC,SAE7Dj4B,KAAK26B,gCAIN,GAAI36B,KAAKm6B,qBACLn6B,KAAKo6B,qBACJp6B,KAAKg5B,eAAgB,CAC7B,IAAI4B,EAAW56B,KAAKw5B,cACL,EAAXoB,IACF56B,KAAKg5B,gBAAiB,EA3S9B,SAAmBpV,GACjB,IAAI3S,EAAOooB,EAAWwB,EAAYC,EAAW7rB,EAAW8rB,EAASva,EAAcpO,EAAgB7N,EAE/Fs2B,EAAa/c,EAAQkd,SAAS,qBAC9BF,EAA8C,yBAAjChd,EAAQ,GAAGga,WAAWC,SACjCja,EAAQkd,SAAS,oBAEnBz2B,EAAeuoB,EAAgBvoB,eAE3B2f,EAAMjT,OAASiT,EAAMjT,MAAMpK,UAE7BoK,EAAQiT,EAAMjT,OAIdhC,EAAY6d,EAAgB1B,UAAU6P,UAAUn6B,EAAYqW,sBAAuB,YACnF4jB,EAAU,CACRnyB,KAAM,cACN7B,IAAKxC,EAAcA,EAAawC,IAAMjH,EAASiC,mBAC/Cyf,QAAShb,EAAE,aACXyI,UAAWA,EACXwS,SAAUoZ,EAAY,EAAI,GAE5Bra,EAAe,IAAIzf,EAAUg6B,IAC7B9pB,EAAQ,CACNpK,UAAW2Z,EACX3O,UAAWib,EAAgBjb,UAC3BzF,OAAQ,IAEJvF,UAAUmK,OAAS,CAACC,IAI5BooB,EAAY,WACRyB,EACFzB,EAAY,UACLpoB,EAAMpK,UAAUwlB,aACvBgN,EAAY,mBAGdl3B,EAAE0B,QAAQoN,EAAMpK,UAAUmK,OAAQ,SAASioB,GACzCA,EAAEC,UAAW,KAIf9mB,EAAiBrR,EAAU+J,OAAOsH,gBACnB8oB,qBAAqB7B,GACpCjnB,EAAeunB,cAAc1oB,GACzB1M,GAGF6N,EAAe2nB,iBAAiBx1B,GAGlCxD,EAAU+J,OAAOjE,UAAYoK,EAAMpK,UAEnClG,EAAKkF,MAAM,2BAA6BwzB,GACxC1vB,EAAWkD,MAAM,sBAmPXsuB,MAONR,uBAAwB,WACtB,IAAIS,EAiDAC,EA9CAhoB,EAAQrT,KAAKs6B,uBAAuB1Y,SAAS5hB,KAAKq6B,yBAClDiB,EAAgBjoB,EAAM1B,KAAOwN,EAAiBxd,mBAAqB0R,EAAMsjB,EAC7Eh2B,EAAKkF,MAAM,kBAAoBy1B,GAE3Br6B,QAAQ6C,YAAY9D,KAAK6hB,yBAAyBjR,QAEpD5Q,KAAK6hB,yBAAyBhQ,UAAY/R,EAASyB,MAAMuO,WAAW9P,KAAKq6B,wBAAwB3D,GACjG12B,KAAK6hB,yBAAyBjR,MAAQ5Q,KAAKq6B,wBAAwB1D,GAE5D32B,KAAK6hB,yBAAyBhQ,UAAY,IACjD7R,KAAK6hB,yBAAyBhQ,UAAY/R,EAASyB,MAAMuO,WAAWoU,EAAMjT,MAAMpK,UAAUmK,OAAO,GAAGY,WAKtG5R,KAAKuhB,wBAAwB1P,UAAY7R,KAAK6hB,yBAAyBhQ,UAElD,cAAjB7R,KAAKo4B,UACPp4B,KAAKuhB,wBAAwB3Q,MAAQ5Q,KAAK6hB,yBAAyBjR,MAAQ0qB,EAC3Et7B,KAAKuhB,wBAAwBG,SAAW1hB,KAAK6hB,yBAAyBH,UAGjD,gBAAjB1hB,KAAKo4B,SAEW,GADlBgD,EAAcp7B,KAAK6hB,yBAAyBH,SAAW4Z,IAErDt7B,KAAKuhB,wBAAwB3Q,MAAQ5Q,KAAK6hB,yBAAyBjR,MAAQ0qB,EAC3Et7B,KAAKuhB,wBAAwBG,SAAW0Z,GAEjCA,EAAc,IACrBp7B,KAAKuhB,wBAAwB3Q,MAAS5Q,KAAK6hB,yBAAyBjR,MAAQ5Q,KAAK6hB,yBAAyBH,SAC1G1hB,KAAKuhB,wBAAwBG,UAAY0Z,GAGnB,cAAjBp7B,KAAKo4B,WAEM,GADlBgD,EAAcp7B,KAAK6hB,yBAAyBH,SAAW4Z,IAErDt7B,KAAKuhB,wBAAwB3Q,MAAQ5Q,KAAK6hB,yBAAyBjR,MACnE5Q,KAAKuhB,wBAAwBG,SAAW0Z,GAEjCA,EAAc,IACrBp7B,KAAKuhB,wBAAwB3Q,MAAQ5Q,KAAK6hB,yBAAyBjR,MAAQwqB,EAC3Ep7B,KAAKuhB,wBAAwBG,UAAY0Z,IAM3Cp7B,KAAKuhB,wBAAwB3Q,MAAQ,GACvCyqB,EAAY7nB,KAAK+nB,MAAMv7B,KAAKuhB,wBAAwB3Q,MAAQuO,EAAiBxd,oBAC7E3B,KAAKuhB,wBAAwB3Q,OAASyqB,EAAYlc,EAAiBxd,mBACnE3B,KAAKuhB,wBAAwB1P,WAAawpB,GAEnCr7B,KAAKuhB,wBAAwB3Q,OAASuO,EAAiBxd,qBAC9D05B,EAAY7nB,KAAK0a,MAAMluB,KAAKuhB,wBAAwB3Q,MAAQuO,EAAiBxd,oBAC7E3B,KAAKuhB,wBAAwB3Q,OAASyqB,EAAYlc,EAAiBxd,mBACnE3B,KAAKuhB,wBAAwB1P,WAAawpB,GAG5C16B,EAAKkF,MAAM,qBAAuBC,KAAKC,UAAU/F,KAAKuhB,0BACtD5X,EAAWkD,MAAM,kBAInBqqB,6BAA8B,SAAsBroB,EAAMkoB,GACxD,IAAIqD,EAAqBrD,GAAsB/2B,KAAKo6B,mBAChDzZ,EAAcyZ,EAAmBxY,SAAS/S,EAAK8R,aAC/CrH,EAAYzK,EAAKiP,QAMrB,OAJI6C,EAAY+V,EAAI7nB,EAAKioB,YAAcnW,EAAY+V,EAAIpd,EAAUkiB,aAC7D7a,EAAYgW,EAAI,GAAKhW,EAAYgW,EAAIrd,EAAU2c,gBACjDtV,EAAc,MAETA,GAGTua,qBAAsB,SAAoC7B,GACxD,IAAIoC,EAAU,CAAEC,SAAY17B,KAAK27B,gCACjBC,kBAAmB57B,KAAK67B,sCACxBC,QAAW97B,KAAK+7B,+BAChBC,QAAW,MACvBC,EAASR,EAAQpC,GACrBr5B,KAAKq5B,UAAYA,EACjBr5B,KAAKu6B,wBAA0B0B,GAGjCN,gCAAiC,SAA+B9sB,EAAMkoB,GAEpE,IAAIpW,EAAc3gB,KAAK67B,sCAAsChtB,EAAMkoB,GACnE,GAAIpW,EAAa,CACf,IAAI6M,EAAgB3e,EAAK2e,cACrB0O,EAAgBl8B,KAAKk3B,6BAA6BroB,EAAMkoB,GAC5DmF,EAAcvF,GAAK9nB,EAAKiP,QAAQoX,UAEhCvU,EAAYgW,EAAInjB,KAAK0a,OAAOgO,EAAcvF,EAAIxX,EAAiBvd,2BAA6B4rB,GAC5F,IAAI2O,EAAOhd,EAAiBxd,mBAAqB,EAC7Cgf,EAAYgW,EAAI,EAClBhW,EAAYgW,EAAI,EACThW,EAAYgW,EAAIwF,IACvBxb,EAAYgW,EAAIwF,GAGpB,OAAOxb,GAETkb,sCAAuC,SAA8BhtB,EAAMkoB,GAEzE,IAAIpW,EAEAub,EAAgBl8B,KAAKk3B,6BAA6BroB,EAAMkoB,GAC5D,GAAImF,EAAe,CACjBvb,EAAc,IAAIwY,EAElB,IAAItC,EAAWhoB,EAAKgoB,SAChBC,EAAajoB,EAAKioB,WAEtBnW,EAAY+V,EAAIljB,KAAK0a,OAAOgO,EAAcxF,EAAII,GAAcD,GAC5D,IAAIuF,EAAO,EACPhI,EAAOt0B,EAASyB,MAAM6yB,KAC1B,GAAqB,cAAjBp0B,KAAKo4B,SAA0B,CACjC,IAAI7zB,EAAeuoB,EAAgBvoB,eAC/BA,IAEF63B,EAAOhI,EAAO7vB,EAAa6T,OAE3BuI,EAAY+V,EAAI0F,EAClBzb,EAAY+V,EAAI0F,EACTzb,EAAY+V,EAAItC,IACvBzT,EAAY+V,EAAItC,GAClBzT,EAAYgW,EAAI,OAGhBhW,EAAc,KAGhB,OAAOA,GAETob,+BAAgC,SAA8BltB,EAAMkoB,GAElE,IAAIpW,EAEAub,EAAgBl8B,KAAKk3B,6BAA6BroB,EAAMkoB,GAC5D,GAAImF,EAAe,CACjBvb,EAAc,IAAIwY,EAElB,IAAI/E,EAAOvlB,EAAKulB,KAEZyC,EAAWhoB,EAAKgoB,SAChBC,EAAajoB,EAAKioB,WAClBF,EAAY/nB,EAAK+nB,UACjByF,EAAQ7oB,KAAK0a,OAAOgO,EAAcvF,EAJlB,GAIuCC,GACvDyF,EAAQ,IACVA,EAAQ,GAEV1b,EAAY+V,EAAIljB,KAAK0a,OAAOgO,EAAcxF,EAAII,GAAcD,GACxDlW,EAAY+V,EAAI,EAClB/V,EAAY+V,EAAI,EACT/V,EAAY+V,EAAItC,IACvBzT,EAAY+V,EAAItC,GAClBzT,EAAY+V,IAAMtC,EAAO,GAAKiI,EAC9B1b,EAAYgW,EAAI,OAGhBhW,EAAc,KAGhB,OAAOA,GAGT6Y,YAAa,WACX,OAAOx5B,KAAKo6B,mBAAmBZ,YAAYx5B,KAAKm6B,sBAGlDO,oBAAqB,SAAmC5rB,EAAMif,GAC5D,IAAI7E,EAAO8E,EACX9E,EAAQ1V,KAAK0a,MAAMH,EAAW,GAC9BC,EAAWD,EAAW,EAAK,GAC3Bjf,EAAK2O,SAASyL,EAAO8E,OAvlB7BqJ,EAAyBxY,QAAU,CAAC,aAAc,WAAY,OAAQ,cAAe,WAAY,mBAAoB,aA6lBrH5d,QACGO,OAAO,oBACP6pB,UAAU,2BAA4BgM,GA3mB3C,GCAA,WAEE,aA6CA,SAASiF,EAAoB3f,EAAQ4R,EAAU7tB,GAC7C,IAAkB67B,EAAd34B,EAAQ5D,KACR+sB,EAAiBwB,EAASzP,WAAW,wBAEzCnC,EAAO6f,OAAS,KAChB7f,EAAO8f,YAAc,KACrB9f,EAAO+f,WAQP,SAAqBC,GACnB,IAAIxvB,EAAM,IAAIC,KACVovB,EAASrvB,EAAI+C,eACbgZ,EAAQ/b,EAAIqL,WACZokB,EAAoC,EAAvBjgB,EAAO6Q,cACpBQ,EAAU7gB,EAAIuG,aACdmpB,EAAelgB,EAAO6Q,cAAc,GACpCxI,EAAW9Z,SAASge,EAAU0T,EACV5O,EAAU6O,EACV,IAEpBF,GAASH,GAAU7f,EAAO6f,UACxB7f,EAAO8f,aACT9f,EAAO8f,YAAYt0B,SACrBwU,EAAO8f,YAYX,SAAkBD,EAAQ7qB,GACxB,IAAImrB,EAAe77B,QAAQ6c,QAAQ,iBAE/BiP,EAAegH,cAEbpiB,GAAQA,EAAK,GAAG2kB,WAAW,UAAU50B,OAAS86B,GAChDjO,EAASyJ,OAAO8E,GAGlB36B,EAAE0B,QAAQ8N,EAAM,SAASorB,GACnBA,EAAWzG,WAAW,UAAU50B,OAAS86B,GAC3Cv7B,QAAQ6c,QAAQif,GAAY36B,KAAK,OAAO46B,GAAG,GAAGhF,OAAO8E,KAI3D,OAAOA,EA3BgBG,CAAST,EAAQ7f,EAAOhL,MAC7CgL,EAAO6f,OAASA,GAGd7f,EAAO8f,cAET9f,EAAO8f,YAAYrQ,IAAI,MAAOpH,EAAW,MAEzCuX,EAAU77B,EAASO,QAAQ2L,KAAKhJ,EAAO+Y,EAAO+f,YAAa,OA5B/D/f,EAAOgC,IAAI,WAAY,WACjB4d,GACF77B,EAAS8L,OAAO+vB,KAXtBD,EAAoBzd,QAAU,CAAC,SAAU,WAAY,YA4DrD5d,QACGO,OAAO,oBACP6pB,UAAU,YApGb,WACE,MAAO,CACLC,SAAU,IACVqB,QAAS,yBACTd,KAIF,SAAc3H,EAAO4H,EAAUoR,EAAOC,GACpC,SAASC,IACP,OAAOtR,EAAS1pB,KAAK,mBAOvB,IAAIi7B,EAAenZ,EAAM8B,OALzB,WACE,OAAOmX,EAAyB3P,eAIQ,SAASA,GACjD,GAAIA,EAAe,CACjB6P,IACAnZ,EAAMsJ,cAAgBA,EAEtB,IAAI8P,EAAepZ,EAAM8B,OAAOoX,EAAU,SAASzrB,GAC7CA,EAAKvF,SACPkxB,IACApZ,EAAMvS,KAAOA,EAEbuS,EAAMwY,oBAtBd5d,WAAYwd,KAblB","file":"Scheduler.services.js"} \ No newline at end of file +{"version":3,"sources":["Scheduler/Calendar.service.js","Scheduler/Component.service.js","Scheduler/CalendarController.js","Scheduler/CalendarListController.js","Scheduler/CalendarsController.js","Scheduler/ComponentController.js","Scheduler/sgCalendarDay.directive.js","Scheduler/sgCalendarDayBlock.directive.js","Scheduler/sgCalendarDayTable.directive.js","Scheduler/sgCalendarGhost.directive.js","Scheduler/sgCalendarListEvent.directive.js","Scheduler/sgCalendarListItem.directive.js","Scheduler/sgCalendarMonthDay.directive.js","Scheduler/sgCalendarMonthEvent.directive.js","Scheduler/sgCalendarScrollView.directive.js","Scheduler/sgCategoryStylesheet.directive.js","Scheduler/sgDraggableCalendarBlock.directive.js","Scheduler/sgNowLine.directive.js"],"names":["Calendar","futureCalendarData","this","init","name","id","newCalendarData","$$resource","create","$unwrap","$factory","$q","$timeout","$log","Settings","Resource","Preferences","Component","Acl","angular","extend","activeUser","$Preferences","$Component","$$Acl","$view","module","e","value","EventDragDayLength","EventDragHorizontalOffset","ConflictHTTPErrorCode","factory","$defaultCalendar","calendar","defaults","SOGoDefaultCalendar","_","find","$findAll","active","$add","list","sibling","isWebCalendar","$webcalendars","isSubscription","$subscriptions","$calendars","findIndex","o","i","localeCompare","push","splice","settings","FoldersOrder","saveFoldersOrder","flatMap","$reloadAll","data","writable","_this","forEach","isUndefined","fetch","then","calendars","union","filter","isOwned","acls","objectCreator","calendarData","group","owner","login","$get","$getIndex","indexOf","map","$subscribe","uid","path","userResource","$addWebCalendar","url","d","defer","urls","webCalendarURL","reject","post","isEditable","isRemote","debug","JSON","stringify","undefined","resolve","response","status","promise","reloadWebCalendars","promises","$error","l","statusText","all","$deleteComponents","components","component","isDefined","pid","uids","saveFoldersActivation","ids","request","folders","prototype","color","$acl","isSuperUser","$shadowData","$omit","$id","when","$futureCalendarData","getClassName","base","$rename","$save","$delete","remove","$reset","key","save","setCredentials","username","password","export","options","type","filename","open","$setActivation","$getComponent","componentId","recurrenceId","$find","isError","isObject","copy","futureComponentData","newComponentData","newguid","isNew","$rootScope","Component_STATUS","User","Card","Gravatar","STATUS","$settings","$User","$Card","$gravatar","timeFormat","$query","search","$queryEvents","sort","asc","filterpopup","$queryTasks","$refreshTimeout","$ghost","EventsFilterState","TasksFilterState","EventsSortingState","parseInt","TasksSortingState","show_completed","ShowCompletedTasks","$categories","SOGoCalendarCategoriesColors","SOGoTimeFormat","constant","NOT_LOADED","DELAYED_LOADING","LOADING","LOADED","DELAYED_MS","$selectedCount","count","$events","event","selected","length","$tasks","task","$startRefreshTimeout","cancel","refreshViewCheck","SOGoRefreshViewCheck","f","bind","$emit","timeInterval","$isLoading","$loaded","$filter","otherType","now","Date","day","getDate","month","getMonth","year","getFullYear","queryKey","capitalize","params","dirty","keys","$unwrapCollection","calendarId","occurrenceId","encodeURIComponent","join","filterCategories","query","re","RegExp","category","saveSelectedList","componentType","$eventsBlocksForView","view","date","firstDayOfWeek","viewAction","startDate","endDate","SOGoFirstDayOfWeek","beginOfWeek","setTime","getTime","addDays","setDate","setMonth","endOfWeek","$eventsBlocks","j","dayDates","dayNumbers","deferred","toLowerCase","sd","getDayString","ed","views","reduceComponent","associateComponent","objects","eventData","componentData","zipObject","eventsFields","start","c_startdate","hour","getHourString","blocks","block","nbr","isFirst","$views","viewIndex","viewData","allDayBlocks","reduce","events","flatten","days","dayIndex","dayNumber","calendarName","fields","invokeMap","monthData","dayData","$resetGhost","pointerHandler","startHour","endHour","$parseDate","dateString","time","substring","split","no_time","categories","repeat","alarm","action","quantity","unit","reference","relation","delta","isString","setMinutes","Math","round","getMinutes","end","minutesTo","setDelta","dueDate","due","completedDate","completed","c_category","$isRecurrent","byDayMask","occurrence","frequency","byday","toString","dates","rdate","rdates","interval","monthdays","months","until","$hasCustomRepeat","hasCustomRepeat","classification","match","exec","SOGoCalendarDefaultReminder","$hasAlarm","M","H","D","W","sendAppointmentNotifications","SOGoAppointmentSendEMailNotifications","destinationCalendar","attendees","attendee","image","email","updateFreeBusy","initOrganizer","results","organizer","cn","c_email","updateFreeBusyAttendee","isReadOnly","isEditableOccurrence","isInvitation","userHasRSVP","isInvitationOccurrence","showPercentComplete","percentComplete","enablePercentComplete","markAsCompleted","dlp","$mdDateLocaleProvider","$dateFormat","SOGoLongDateFormat","localizedCompletedDate","formatDate","localizedCompletedTime","formatTime","catch","coversFreeBusy","quarter","freebusy","updateFreeBusyCoverage","roundedStart","roundedEnd","startQuarter","endQuarter","daysUpTo","index","hourKey","currentDay","dayKey","getHours","beginOfDay","addMinutes","resource","domain","sday","eday","isMSExchange","c_folder","addAttendee","card","organizerCalendar","$isList","expandable","container","c_name","listId","refs","ref","c_cn","$preferredEmail","role","partstat","c_uid","$avatarIcon","c_domain","ismsexchange","hasAttendee","emails","deleteAttendee","currentAttendee","canRemindAttendeesByEmail","addAttachUrl","attachUrl","attachUrls","deleteAttachUrl","$addDueDate","toISOString","$deleteDueDate","$addStartDate","$deleteStartDate","$addRecurrenceDate","$deleteRecurrenceDate","$reply","reply","delegatedTo","$adjust","every","values","v","extraAttributes","format","startTime","endTime","dueTime","stringWithSeparator","occurrenceOnly","$futureComponentData","error","repeatDescription","localizedString","toUpperCase","alarmDescription","copyTo","destination","moveTo","CalendarController","$scope","$state","$stateParams","sgHotkeys","stateEventsBlocks","deregisterCalendarsList","vm","hotkeys","_goToPeriod","$event","direction","selectedDate","changeDate","_formatDate","setHours","replace","updateView","asDate","newDate","element","currentTarget","attr","go","changeView","expandedAllDays","toggleAllDays","$onInit","createHotkey","description","callback","args","registerHotkey","$on","deregisterHotkey","$inject","controller","CalendarListController","$mdDialog","focus","Dialog","CalendarSettings","Alarm","sortLabels","selectComponentType","reload","unselectComponents","searchMode","mode","openComponent","viewable","templateUrl","show","parent","document","body","targetEvent","clickOutsideToClose","escapeToClose","controllerAs","locals","stateComponent","newComponent","baseComponent","updateComponentFromGhost","coordinates","calendarNumber","activeCalendars","RecurrentComponentDialogController","updateThisOccurrence","hide","onComponentAdjustError","updateAllOccurrences","message","AttendeeConflictDialogController","conflictError","ignoreConflicts","currentEventCoordinates","summary","isAllDay","duration","finally","getDelta","originalEventCoordinates","originalCalendar","isException","getAlarms","template","title","location","priority","tasks","selectedList","multiple","selectAll","toggleComponentSelection","preventDefault","stopPropagation","confirmDeleteSelectedComponents","confirm","ok","openEvent","openTask","filteredBy","field","sortedBy","cancelSearch","SelectedList","ascending","CalendarsController","$window","$mdToast","service","newCalendar","ev","prompt","UserLogin","noop","addWebCalendar","WebCalendarAuthDialogController","scope","parts","hostname","formatted","authenticate","form","$valid","required","reason","$setValidity","inputType","subscribeToFolder","simple","content","position","hideDelay","sortableMode","toggleSortableMode","resetSort","sortableCalendars","scrollableContainer","containment","orderChanged","accept","sourceItemHandleScope","destSortableScope","destItemScope","sortableScope","SOGoCalendarCategories","asCSSIdentifier","$watch","pick","newList","oldList","commonList","intersectionBy","oldObject","isEqual","ComponentController","AddressBook","Account","_newMessage","recipients","accounts","account","onCompleteDeferred","$getMailboxes","mailboxes","$newMessage","editable","to","subject","onComplete","stateAccount","stateMessage","onCompletePromise","calendarService","close","highPriority","cardFilter","$filterAll","newMessageWithAllRecipients","newMessageWithRecipient","edit","editAllOccurrences","replyAllOccurrences","deleteOccurrence","deleteAllOccurrences","toggleRawSource","ComponentRawSourceDialogController","copySelectedComponent","moveSelectedComponent","ComponentEditorController","oldStartDate","oldEndDate","getDays","attendeesEditor","showRecurrenceEditor","showAttendeesEditor","attendeeConflictError","hours","toggleRecurrenceEditor","toggleAttendeesEditor","recurrenceMonthDaysAreRequired","changeFrequency","changeCalendar","$cards","partial","address","emailRE","createCard","str","searchText","trim","charCodeAt","test","charAt","removeAttendee","$setDirty","priorityLevel","changeAlarmRelation","alarmRelation","onAlarmChange","$setPristine","reset","addStartDate","removeStartDate","addDueDate","removeDueDate","adjustStartTime","valueOf","adjustEndTime","adjustDueTime","sgCalendarDayController","dayString","directive","restrict","sgCalendarDayBlock","clickBlock","tElem","tAttrs","p","has","link","iElement","attrs","pc","left","right","siblings","css","c_isallday","addClass","userState","c_isopaque","c_status","sgCalendarGhost","require","ctrls","domElement","calendarDayCtrl","scrollViewCtrl","originalCalendarNumber","deregisterDragStart","deregisterDrag","showGhost","isRelative","durationLeft","maxDuration","quartersToHM","quarterHeight","topOffset","removeClass","deregisterDragEnd","forEachRight","classList","c","quarters","minutes","mins","floor","sgCalendarListEvent","clickComponent","userstate","sgCalendarListItemController","$element","$mdPanel","$mdMedia","$mdSidenav","sgConstant","$ctrl","editMode","$postLink","clickableElement","nameElements","getElementsByClassName","inputContainer","inputElement","moreOptionsButton","last","updateCalendarName","innerHTML","editFolder","add","srcEvent","select","panel","saveFolder","disabled","revertEditing","confirmDelete","alert","showMenu","panelPosition","newPanelPosition","relativeTo","addPanelPosition","xPosition","ALIGN_START","yPosition","ALIGN_TOPS","panelAnimation","newPanelAnimation","openFrom","withAnimation","animation","FADE","config","attachTo","itemCtrl","bindToController","MenuController","trapFocus","focusOnOpen","mdPanelRef","FileUploader","$menuCtrl","showOnly","showAll","showProperties","PropertiesDialogController","srcCalendar","saveProperties","showLinks","LinksDialogController","importCalendar","CalendarImportDialogController","folder","filterByExtension","item","isTextFile","uploader","ApplicationBaseURL","autoUpload","queueLimit","filters","fn","onSuccessItem","headers","msg","imported","onErrorItem","share","$users","usersWithACL","users","panelRef","panelEl","one","sgCalendarScrollView","$document","$mdGesture","sgCalendarScrollViewController","isMultiColumn","sgScrollView","getQuarterHeight","scrollStep","getDayNumbers","maxX","getMaxColumns","onDragStart","deregisterDragStop","onDragEnd","bindedUpdateCoordinates","updateCoordinates","bindedUpdateFromPointerHandler","updateFromPointerHandler","on","hourCell","quartersOffset","SOGoDayStartTime","getElementById","scrollTop","offsetTop","$destroy","off","hour0","hour23","height","getDayDimensions","viewLeft","width","leftOffset","nodes","domRect","tileHeader","getBoundingClientRect","clientHeight","offset","top","getElementsByTagName","el","attributes","mdGridList","max","dayDimensions","x","y","dayHeight","dayWidth","daysOffset","pointerCoordinates","scrollY","minY","getContainerBasedCoordinates","lastScroll","ngModel","sgDraggableCalendarBlock","blockIndex","isFirstBlock","isLastBlock","dragGrip","leftGrip","rightGrip","topGrip","bottomGrip","parentNode","tagName","append","clone","initGrips","onDragDetect","dragMode","rect","scrollableZone","target","scrollHeight","pageX","className","SOGoEventDragPointerHandler","initFromEvent","onDrag","updateFromEvent","pointer","dragHasStarted","b","dragging","SOGoCoordinates","SOGoEventDragEventCoordinates","eventType","setEventType","otherCoordinates","getDistance","sqrt","weekDay","initFromBlock","prevDayNumber","sumBy","currentDayNumber","initFromCalendar","_quartersToHM","getStartTime","getEndTime","originalCoordinates","currentCoordinates","originalViewCoordinates","currentViewCoordinates","getEventViewCoordinates","pageY","newEventCoordinates","setTimeFromQuarters","updateEventCoordinates","distance","isHourCell","isMonthly","newData","hasClass","parseDate","prepareWithEventType","dragStart","newDuration","deltaDays","deltaQuarters","ceil","clientWidth","methods","multiday","getEventMultiDayViewCoordinates","multiday-allday","getEventMultiDayAllDayViewCoordinates","monthly","getEventMonthlyViewCoordinates","unknown","method","pxCoordinates","maxY","minX","daysY","sgNowLineController","updater","nowDay","lineElement","updateLine","force","hourHeight","minuteHeight","$lineElement","dayElement","eq","_addLine","iAttr","sgCalendarScrollViewCtrl","_getDays","_unwatchView","_unwatchDays"],"mappings":"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","file":"Scheduler.services.js"} \ No newline at end of file