1"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[675],{9691:function(e,n,t){t(52675),t(2008),t(18111),t(22489),t(7588),t(83851),t(81278),t(79432),t(23500);var o=t(64467),i=(t(44114),t(26099),t(51786)),a=t.n(i),s=(t(28706),t(50113),t(48980),t(74423),t(62062),t(54554),t(81148),t(20116),t(61701),t(42762),t(95093)),r=t.n(s),M=t(85152),c=t(65216),l=t(6741),d=(t(38191),t(64340)),u=t(18337);function A(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function p(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?A(Object(t),!0).forEach(function(n){(0,o.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):A(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}a().components.register("ap-manager-enquiry-form",{viewModel:function(e){var n=[],t=e.isOpen,o=e.isVisible,i=e.showNoApsOption,s=e.metadata,A=a().observableArray([]),p=a().observable(),q=a().observable(),m=a().observable(null),f=a().observable(!0),h=a().pureComputed(function(){return!!c.s.m.user()}),W=a().observable(),g=a().pureComputed(function(){return!q()&&!p()}),v=a().observable(!1),b=new d._I("fullName",function(e){return l.A.validateFullName(e||"")}),y=new d._I("emailAddress",l.A.validateEmail),w={field:b,enabled:g,id:b.name,placeholder:"Your Name"},k={field:y,enabled:g,id:y.name,placeholder:"Your Email Address"},x=r()().isBefore(r()("2026-09-01"),"day"),T=a().pureComputed(function(){var e=(h()||b.isValid())&&y.isValid(),n=!1,t=A().find(function(e){var t=!e.apNameFieldData.field.value()&&!e.apContactNameFieldData.field.value()&&!e.apContactEmailFieldData.field.value(),o=e.apNameFieldData.field.showFailure()&&e.apContactNameFieldData.field.showFailure()&&e.apContactEmailFieldData.field.showFailure(),i=e.apNameFieldData.field.isValid()&&e.apContactNameFieldData.field.isValid()&&e.apContactEmailFieldData.field.isValid();return i&&(n=!0),!(t&&!o||i)});return e&&n&&!t});if(n.push(o.subscribe(function(e){e||O()})),O(),h()){var S;b.value((null===(S=c.s.m.user())||void 0===S?void 0:S.fullName())||"");M.A.getEmailAddress(function(e){e.emailAddress&&y.value(e.emailAddress),W(!e.emailAddress)},function(){return W(!0),!1})}function C(){var e=(0,u.I)(),n=new d._I("fullName",function(e){return l.A.validateName(e)}),t=new d._I("fullName",function(e){return l.A.validateFullName(e||"")}),o=new d._I("emailAddress",function(e){return l.A.validateEmail(e)}),i={field:n,enabled:g,id:"ap-name-".concat(e),placeholder:"AP Name"},a={field:t,enabled:g,id:"ap-contact-name-".concat(e),placeholder:"Contact Name"},s={field:o,enabled:g,id:"ap-contact-email-".concat(e),placeholder:"Contact Email Address"};return{id:e,apNameFieldData:i,apContactNameFieldData:a,apContactEmailFieldData:s,removeRow:function(){return function(e){A().length<=2&&f(!1);var n=A().findIndex(function(n){return n.id===e});A.splice(n,1)}(e)}}}function P(){if(T()||v()){var e=a().isPureComputed(s)?a().unwrap(s):s,n=v()?"This school does not currently use APs.":A().map(function(e){var n,t,o;return[null===(n=e.apNameFieldData.field.value())||void 0===n?void 0:n.trim(),null===(t=e.apContactNameFieldData.field.value())||void 0===t?void 0:t.trim(),null===(o=e.apContactEmailFieldData.field.value())||void 0===o?void 0:o.trim()]}).filter(function(e){return e.every(function(e){return!!e})}).map(function(e,n){var t=n+1;return"AP ".concat(t," Name: ").concat(e[0],"\n")+"AP ".concat(t," Contact: ").concat(e[1],"\n")+"AP ".concat(t," Email: ").concat(e[2])}).join("\n\n"),t={name:b.value()||"",email:y.value()||"",kind:"enquiry",message:"Tell us about your APs\n\n"+n,metadata:e};M.A.onlineEnquiry(t,p,function(){v()?I():(q(!0),m(null))},function(e){var n;v(!1);var t=null===(n=e.responseJSON)||void 0===n?void 0:n.failures;if(void 0!==t&&((0,d.O)(t,[y,b]),m("Please correct the errors above and try again."),t.filter(function(e){return["fullName","emailAddress"].includes(e.field)}).length))return!1;return m("Sorry, something went wrong sending your enquiry.<br>Please try again."),!1})}}function I(){t(!1)}function O(){var e=C(),n=C();f(!0),A([e,n]),h()||b.reset(),h()&&!W()||y.reset(),q(!1),p(!1),m(null),v(!1)}return{fields:A,removeRowAllowed:f,nameFieldData:w,emailFieldData:k,handleAddAnother:function(){A.push(C()),A().length>1&&f(!0)},handleSubmit:P,handleSubmitNoAps:function(){v(!0),P()},handleClose:I,isValid:T,submitting:p,submitted:q,submitError:m,removeIcon:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
1<path d="M19 13H5v-2h14v2z"/></svg>',isLoggedIn:h,emailNeeded:W,showNoApsOption:i,isBeforeSeptember2026:x,dispose:function(){n.forEach(function(e){return e.dispose()})}}},template:'\n {{#ifnot submitted}}\n <form>\n <p>Tell us about your APs and weâll get them set up\x3c!--\n --\x3e{{#ifnot isBeforeSeptember2026}}.{{/ifnot}}\n {{#if isBeforeSeptember2026}}\n ready for September.\n {{/if}}</p>\n {{#if !isLoggedIn() || emailNeeded()}}\n {{#ifnot isLoggedIn}}\n <form-text-input params="data: nameFieldData"></form-text-input>\n {{/if}}\n <form-text-input params="data: emailFieldData"></form-text-input>\n\n <p>Your APs</p>\n {{/if}}\n {{#foreach fields}}\n <div class="apField">\n <form-text-input params="data: apNameFieldData"></form-text-input>\n <form-text-input params="data: apContactNameFieldData"></form-text-input>\n <form-text-input params="data: apContactEmailFieldData"></form-text-input>\n {{#if $component.removeRowAllowed}}\n <button class="button button-small button-icon removeRow"\n data-bind="click: removeRow, disable: $component.submitting"\n aria-label="Remove AP">\n <span class="removeIcon">{{{$component.removeIcon}}}</span>\n <span class="textForMobile" role="presentation">Remove AP</span>\n </button>\n {{/if}}\n </div>\n {{/foreach}}\n <button class="button button-small button-link addAnother" data-bind="click: handleAddAnother">\n Add Another\n </button>\n <div class="buttonActions">\n <button class="button button-small button-primary" data-bind="click: handleSubmit, enable: isValid">\n Submit\n </button>\n {{#if $data.showNoApsOption}}\n <button class="button button-small button-link" data-bind="click: handleSubmitNoAps, enable: !submitting()">\n We donât use APs\n </button>\n {{/if}}\n </div>\n {{#if submitError}}\n <p class="error">{{{submitError}}}</p>\n {{/if}}\n </form>\n {{/if}}\n {{#if submitted}}\n <p>Thanks, weâll get them set up if theyâre not already\x3c!--\n --\x3e{{#ifnot isBeforeSeptember2026}}.{{/ifnot}}\n {{#if isBeforeSeptember2026}}\n â further updates to follow in September.\n {{/if}}</p>\n {{/if}}\n '}),a().components.register("ap-manager-enquiry-popup",{viewModel:function(e){var n=[],t=e.label,o=e.popoverClass,i=e.showNoApsOption,s=e.isOpen,r=e.metadata,M=t||"tell us about your APs",c=a().observable(),l=a().observable(),d=a().observable();return s&&(c(s()),n.push(s.subscribe(function(e){e&&c(!0)})),d(!0)),p(p({},e),{},{label:M,isOpen:c,isVisible:l,isControlledExternally:d,popoverClass:o,showNoApsOption:i,metadata:r,dispose:function(){n.forEach(function(e){return e.dispose()})}})},template:'\n <div data-bind="\n class: popoverClass,\n popover: { dim: true,\n open: isOpen,\n isVisible: isVisible,\n isModal: true,\n noLabel: !!isControlledExternally()\n }">\n {{#if !isControlledExternally()}}\n <a class="popoverLabel" href="#">{{label}}</a>\n {{/if}}\n <div class="popoverBody enquiry">\n <div class="popoverTitle">Tell Us About Your APs</div>\n <div class="body">\n <ap-manager-enquiry-form params="\n isOpen: isOpen,\n isVisible: isVisible,\n showNoApsOption: showNoApsOption,\n metadata: metadata"></ap-manager-enquiry-form>\n </div>\n </div>\n </div>'})},88106:function(e,n,t){var o=t(51786),i=t.n(o);t(88444),t(39396);i().components.register("archived-groups",{viewModel:function(e){var n=i().observableArray(),t=i().observable(),o=i().observable();function a(o){t(o.pageToken),e.embedLinks(o),i().utils.arrayPushAll(n,o.groups)}return a(e.data),{groups:n,pageToken:t,running:o,more:function(){e.invoke({pageToken:t()},o,a)}}},template:'\n <table>\n <thead>\n <tr>\n <th class="text-left">Group</th>\n <th class="text-left">Archived</th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n \x3c!-- ko foreach: groups --\x3e\n <tr>\n <td class="name">{{name}}</td>\n <td class="archived">
1\n <span data-bind="moment: {value: archived, ago: true}"></span>\n </td>\n <td>\n <action-bar>\n <assist-link params="utterance: {text: restore}">Restore</assist-link>\n </action-bar>\n </td>\n </tr>\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n <more-link params="hasMore: pageToken, running: running, more: more"></more-link>'})},57611:function(e,n,t){t(48980),t(18111),t(81148),t(26099);var o=t(4523),i=t(51786),a=t.n(i);t(88444);a().components.register("current-groups",{viewModel:function(e){var n=a().observableArray(),t=a().observable(),i=a().observable(),s=a().observable(!1);function r(i){t(i.pageToken),e.embedLinks(i),a().utils.arrayPushAll(n,i.groups);var r=n().findIndex(function(e){return!e.isEditable});o.Ay.each(n(),function(e,n){e.firstNonEditable=n===r}),s(n().every(function(e){return!e.isEditable}))}r(e.data);var M=e.data.links,c=e.data.createGroupLink;return{groups:n,createGroupLink:c,linksData:M,pageToken:t,running:i,allNonEditable:s,more:function(){e.invoke({pageToken:t()},i,r)}}},template:'\n <table>\n <thead>\n <tr>\n <th colspan="2" class="text-left">Messaging Groups You Can Edit Here</th>\n </tr>\n </thead>\n <tbody>\n \x3c!-- ko if: allNonEditable --\x3e\n <tr>\n <td colspan="2">\n You donât have any editable groups set up yet, but you can\n <assist-link params="utterance: {text: createGroupLink}, invocable: false">create</assist-link>\n one.\n </td>\n </tr>\n \x3c!-- /ko --\x3e\n \x3c!-- ko foreach: groups --\x3e\n \x3c!-- ko if: firstNonEditable --\x3e\n <tr>\n <th colspan="2" class="separatorTitle text-left">\n Other Messaging Groups\n </th>\n </tr>\n <tr>\n <td colspan="2" class="separatorText">\n Most of these groups are automatically maintained from the data in your MIS.\n </td>\n </tr>\n \x3c!-- /ko --\x3e\n <tr>\n <td class="name">{{name}}</td>\n <td>\n <action-bar>\n <assist-link params="utterance: {text: actions.showMembers}">Show Members</assist-link>\n {{#if isEditable}}\n <assist-link params="utterance: {text: actions.rename}, invocable: false">Rename</assist-link>\n <assist-link params="utterance: {text: actions.archive}">Archive</assist-link>\n {{/if}}\n </action-bar>\n </td>\n </tr>\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n <more-link params="hasMore: pageToken, running: running, more: more"></more-link>'})},28491:function(e,n,t){var o=t(51786),i=t.n(o),a=t(4523);i().components.register("foot-links",{viewModel:function(e){var n=e.data;return a.Ay.each(n,function(e){e.caretPosition=e.caretPosition||e.link.length}),{links:n,withTopMargin:e.withTopMargin}},template:"\n <div data-bind='css: { withTopMargin : withTopMargin }'>\n <action-bar>\n {{#foreach links}}\n <action-group>\n <assist-link params=\"utterance: {text: link}, invocable: invocable, caretPosition: caretPosition\">\n {{displayText}}\n </assist-link>\n </action-group>\n {{/foreach}}\n </action-bar>\n </div>"})},59910:function(e,n,t){var o=t(51786),i=t.n(o);t(88444);i().components.register("group-members",{viewModel:function(e){var n=i().observableArray(),t=i().observable(),o=i().observable(),a=e.data.editable;function s(o){t(o.pageToken),e.embedLinks(o),i().utils.arrayPushAll(n,o.members)}return s(e.data),{members:n,editable:a,pageToken:t,running:o,more:function(){e.invoke({pageToken:t()},o,s)}}},template:'\n <table>\n <thead>\n <tr>\n <th class="text-left">Name</th>\n <th class="text-left">Class</th>\n <th class="text-left">Year</th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n \x3c!-- ko foreach: members --\x3e\n <tr>\n <td class="name">{{name}}</td>\n <td>{{$data.className || "-"}}</td>\n <td>{{$data.yearGroupName || "-"}}</td>\n \x3c!-- ko if: $parent.editable --\x3e\n <td>\n <action-bar>\n <assist-link params="utterance: {text: remove}">Remove</assist-link>\n </action-bar>\n </td>\n \x3c!-- /ko --\x3e\n </tr>\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n <more-link params="hasMore: pageToken, running: running, more: more"></more-link>'})}
1,56152:function(e,n){n.A={packedLunch:{colour:"#666666"},homeLunch:{colour:"#999999"}}},63476:function(e,n,t){t.r(n),t.d(n,{init:function(){return Zc}});var o=t(10467),i=t(54756),a=t.n(i),r=(t(50113),t(74423),t(18111),t(20116),t(26099),t(3362),t(84864),t(57465),t(27495),t(87745),t(90906),t(38781),t(21699),t(71761),t(25440),t(74692)),M=t.n(r),c=t(4523),l=t(39848),d=t(39815),u=t(64527),A=(t(28706),t(62062),t(61701),t(51786)),p=t.n(A),q=t(65216),m=(t(60739),t(33110),t(665)),f=t(24681),h=t(51528),W=t(29846),g=encodeURIComponent;function v(e){return"".concat(W.F.path,"/school/").concat(g(e))}var b=function(e){return"".concat(v(e),"/ss")};var y={schoolAPIPath:v,changeStaffUserSettings:function(e,n,t){f.A.post({url:"".concat(v(n),"/staffsettings"),data:JSON.stringify(e),success:t})},markAsEntered:function(e,n,t,o){f.A.post({url:"".concat(v(n),"/absrep/entered"),data:JSON.stringify(e),success:t,failure:o})},markAsVerified:function(e,n,t,o){f.A.post({url:"".concat(v(n),"/verified"),data:JSON.stringify(e),success:t,failure:o})},getTermDates:function(e,n,t,o,i){var a=g(n.format(W.F.dateFormatMomentJs)),s=g(t.format(W.F.dateFormatMomentJs));f.A.get({url:"".concat(v(e),"/termdates?from=").concat(a,"&to=").concat(s),success:o,failure:i})},getInterventions:function(e,n,t){f.A.get({url:"".concat(v(e),"/interventions"),inProgress:n,success:t})},getPupils:function(e,n,t){var o="".concat(v(e),"/pupils");o+="?q=".concat(g(n)),f.A.get({url:o,success:t})},getRegSessions:function(e,n,t,o){f.A.get({url:"".concat(v(e),"/register/sessions?date=").concat(g(n.toString(W.F.dateFormat))),success:t,failure:o})},getRegSessionData:function(e,n,t,o,i,a,s,r,M){var c="".concat(v(e),"/register/data?sessionid=").concat(n,"&codes=").concat(g(i));t&&(c+="&n=".concat(t)),o&&(c+="&seqno=".concat(o)),a&&a.length&&(c+="&pending=".concat(g(a.join(",")))),f.A.get({url:c,inProgress:s,success:r,failure:M})},postToRegister:function(e,n,t,o,i){f.A.post({url:"".concat(v(e),"/register"),data:JSON.stringify(n),inProgress:t,success:o,failure:i})},getRegisterGrid:function(e,n,t,o,i,a){var s="".concat(v(e),"/register/grid");s+="?from=".concat(g(n.toString())),s+="&to=".concat(g(t.toString())),s+="&pupilids=".concat(g(o.join(","))),f.A.get({url:s,success:i,failure:a})},getRegGroupRegisters:function(e,n,t,o,i){f.A.get({url:"".concat(v(e),"/registers/today").concat((0,h.yD)(n)),inProgress:t,success:o,failure:i})},postToClassRegister:function(e,n,t,o,i){f.A.post({url:"".concat(v(e),"/registers"),data:JSON.stringify(n),inProgress:t,success:o,failure:i})},uploadFile:function(e,n,t,o,i,a,s){f.A.post({url:"".concat(v(e),"/files"),data:n,contentType:!1,processData:!1,inProgress:t,uploadProgress:o,success:i,failure:a,complete:s})},getInbox:function(e,n,t,o){f.A.get({url:"".concat(v(e),"/inbox").concat((0,h.yD)(n)),inProgress:t,success:o})},getMessages:function(e,n,t,o){f.A.get({url:"".concat(v(e),"/messages").concat((0,h.yD)(n)),inProgress:t,success:o})},getChanges:function(e,n,t,o){f.A.get({url:"".concat(v(e),"/changes").concat((0,h.yD)(n)),success:t,failure:o})},getRecipients:function(e,n,t,o){f.A.get({url:"".concat(v(e),"/recipients").concat((0,h.yD)(n)),inProgress:t,success:o})},getRelatesTo:function(e,n,t,o){f.A.get({url:"".concat(v(e),"/relatesto").concat((0,h.yD)(n)),inProgress:t,success:o})},getContacts:function(e,n,t){f.A.get({url:"".concat(v(e),"/contacts").concat((0,h.yD)(n)),success:t})},checkMessage:function(e,n,t,o,i){f.A.post({url:"".concat(v(e),"/message/check"),data:JSON.stringify(n),inProgress:t,success:o,failure:i})},postMessage:function(e,n,t,o,i){f.A.post({url:"".concat(v(e),"/message"),data:JSON.stringify(n),inProgress:t,success:o,failure:i})},getCategories:function(e,n){f.A.get({url:"".concat(v(e),"/categories"),success:n})},messagePreview:function(e,n,t,o){f.A.post({url:"".concat(v(e),"/message/preview"),data:JSON.stringify(n),success:t,failure:o})},getSettings:function(e,n,t){f.A.get({url:"".concat(v(e),"/settings"),inProgress:n,success:t})},changeSettings:function(e,n,t,o,i){f.A.post({url:"".concat(v(e),"/settings"),data:JSON.stringify(n),inProgress:t,success:o,failure:i})},getSyncRestrictions:function(e,n){f.A.get({url:"".concat(v(e),"/syncrestrictions"),success:n})},getUsers:function(e,n,t,o,i){f.A.get({url:"".concat(v(e),"/users").concat((0,h.yD)(n)),inProgress:t,success:o,failure:i})},pair:function(e,n,t,o){f.A.post({url:"".concat(b(e),"/pair"),data:JSON.stringify({pairingCode:n}),success:t,failure:o})},getSyncStatus:function(e,n,t){f.A.get({url:"".concat(b(e),"/status"),success:n,failure:t})},getSSClientErrors:function(e,n,t){f.A.get({url:"".concat(b(e),"/clienterrors"),success:n,failure:t})},connectToBromcom:function(e,n,t,o,i){f.A.post({url:"".concat(b(e),"/bromcom/setup"),data:JSON.stringify(n),inProgress:t,success:o,failure:i})},getSSClasses:function(e,n,t){f.A.get({url:"".concat(b(e),"/classes"),success:n,failure:t})},getSSPupils:function(e,n,t,o,i,a){f.A.get({url:"".concat(b(e),"/pupils?child=").concat(g(n),"&parent=").concat(g(t)),inProgress:o,success:i,failure:a})},match:function(e,n,t,o,i){f.A.post({url:"".concat(b(e),"/match"),data:JSON.stringify(n),inProgress:t,success:o,failure:i})},postponeMatch:function(e,n,t,o,i){f.A.post({url:"".concat(b(e),"/match/postpone"),data:JSON.stringify(n),inProgress:t,success:o,failure:i})},rejectMatch:function(e,n,t,o,i){f.A.post({url:"".concat(b(e),"/match/reject"),data:JSON.stringify(n),inProgress:t,success:o,failure:i})},getMatchInfo:function(e,n,t){f.A.get({url:"".concat(b(e),"/match/info?userid=").concat(n),success:t})},getNumMatchesRequired:function(e,n,t){f.A.get({url:"".concat(b(e),"/match/required"),success:n,failure:t})},getNextMatchRequired:function(e,n,t,o){var i=n?"?skip=".concat(n):"";
1f.A.get({url:"".concat(b(e),"/match/required/next").concat(i),success:t,failure:o})},getNumPostponed:function(e,n){f.A.get({url:"".concat(b(e),"/match/postponed"),success:n})},clearPostponed:function(e,n,t){f.A.post({url:"".concat(b(e),"/match/postponed/clear"),inProgress:n,success:t})},getSSContacts:function(e,n,t,o,i,a,s){var r=t?"&pupil=".concat(g(t)):"";f.A.get({url:"".concat(b(e),"/contacts?contact=").concat(g(n)).concat(r,"&email=").concat(g(o)),inProgress:i,success:a,failure:s})},getApManagerDashboard:function(e,n,t,o){var i=e.schoolId;f.A.get({url:"".concat(v(i),"/dashboard/ap-manager"),inProgress:n,success:t,failure:o})}},w=p().observable(),k=p().pureComputed(function(){var e;return Boolean(null===(e=w())||void 0===e?void 0:e.isAlternativeProvision)}),x=p().observableArray(),T=p().observable(),S=function(e){var n=w();if(n)return"/school/".concat(n.id,"/").concat(e)},C=p().observableArray([]);w.subscribe(function(e){e&&y.getCategories(e.id,function(e){C(c.Ay.map(e.categories,function(e){return e.colour="#".concat(e.colourRGB),e}))})});var P=p().pureComputed(function(){var e,n=w(),t=q.A.m.user();return(null!==(e=null==t?void 0:t.orgs)&&void 0!==e?e:[]).find(function(e){return e.urlName==(null==n?void 0:n.id)})}),I={school:w,mySchools:x,isAlternativeProvision:k,unread:T,schoolPath:S,categories:C,org:P};q.A.m.school=w,q.A.m.mySchools=x,q.A.m.isAlternativeProvision=k,q.A.m.unread=T,q.A.m.schoolPath=S,q.A.m.categories=C,q.A.m.org=P;var O=q.A.m,L=t(64467),E=t(80296),N=(t(52675),t(2008),t(44114),t(34782),t(22489),t(7588),t(13579),t(83851),t(81278),t(79432),t(11392),t(23500),t(35964)),F=(t(1544),t(37874),t(16720),t(84777)),R=t(66909),D=t(68604),B=t(23029),j=t(92901),U=(t(16280),t(23792),t(47764),t(73772),t(88454),t(29452),t(62953),t(95093)),H=t.n(U);function V(e,n,t){(function(e,n){if(n.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,n),n.set(e,t)}function G(e,n){return e.get(Y(e,n))}function z(e,n,t){return e.set(Y(e,n),t),t}function Y(e,n,t){if("function"==typeof e?e===n:e.has(n))return arguments.length<3?n:t;throw new TypeError("Private element is not present on this object")}var _=new WeakMap,K=new WeakMap,J=new WeakMap,X=new WeakMap,Q=function(){return(0,j.A)(function e(n){(0,B.A)(this,e),V(this,_,void 0),V(this,K,void 0),V(this,J,void 0),V(this,X,void 0),z(_,this,n.id),z(K,this,n.name),z(J,this,n.registerRead),z(X,this,n.registerWrite)},[{key:"id",get:function(){return G(_,this)}},{key:"name",get:function(){return G(K,this)}},{key:"supportsRegisterRead",get:function(){return G(J,this)}},{key:"supportsRegisterWrite",get:function(){return G(X,this)}},{key:"isManual",get:function(){return"spreadsheet"===this.id}}])}();function Z(e,n,t){(function(e,n){if(n.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,n),n.set(e,t)}function ee(e,n){return e.get(te(e,n))}function ne(e,n,t){return e.set(te(e,n),t),t}function te(e,n,t){if("function"==typeof e?e===n:e.has(n))return arguments.length<3?n:t;throw new TypeError("Private element is not present on this object")}var oe,ie=new WeakMap,ae=new WeakMap,se=new WeakMap,re=new WeakMap,Me=function(){return(0,j.A)(function e(n){var t;(0,B.A)(this,e),Z(this,ie,void 0),Z(this,ae,void 0),Z(this,se,void 0),Z(this,re,void 0),ne(re,this,H()(n.time)),n.mis&&ne(ie,this,new Q(n.mis)),null!==(t=n.syncClients)&&void 0!==t&&t.activeClient&&ne(se,this,new me(ee(re,this),n.syncClients.activeClient)),ne(ae,this,new de(n.pupilList))},[{key:"mis",get:function(){return ee(ie,this)}},{key:"pupilList",get:function(){return ee(ae,this)}},{key:"syncClient",get:function(){return ee(se,this)}},{key:"syncedOK",get:function(){return this.mis&&(!this.clientConnectionLost&&"fresh"===this.pupilList.state||this.mis.isManual)}},{key:"clientConnectionLost",get:function(){return this.syncClient&&!this.syncClient.connected}},{key:"hasCurrentPupilList",get:function(){return"fresh"===this.pupilList.state||"stale"===this.pupilList.state}},{key:"summary",get:function(){var e;return null!==(e=this.mis)&&void 0!==e&&e.isManual?"Pupil data ".concat("notYetSynced"===this.pupilList.state?"not yet ":""," uploaded"):this.mis?"".concat(this.syncedOK?"Connected":"No connection"," to ").concat(this.mis.name):"No MIS configured"}}])}(),ce=new WeakMap,le=new WeakMap,de=function(){return(0,j.A)(function e(n){(0,B.A)(this,e),Z(this,ce,void 0),Z(this,le,void 0),ne(ce,this,n.state),ne(le,this,H()(n.lastSyncTime))},[{key:"lastSyncTime",get:function(){return ee(le,this)}},{key:"state",get:function(){return ee(ce,this)}}])}(),ue=new WeakMap,Ae=new WeakMap,pe=new WeakMap,qe=new WeakMap,me=function(){return(0,j.A)(function e(n,t){(0,B.A)(this,e),Z(this,ue,void 0),Z(this,Ae,void 0),Z(this,pe,void 0),Z(this,qe,void 0),ne(ue,this,H()(t.registered)),ne(Ae,this,t.ipAddress),ne(pe,this,H()(t.lastHeard)),ne(qe,this,n-this.lastHeard<18e4)},[{key:"registered",get:function(){return ee(ue,this)}},{key:"ipAddress",get:function(){return ee(Ae,this)}},{key:"lastHeard",get:function(){return ee(pe,this)}},{key:"connected",get:function(){return ee(qe,this)}}])}(),fe=p().observable();function he(){oe&&window.clearTimeout(oe);var e=O.school();e&&y.getSyncStatus(e.id,function(e){fe(new Me(e))}),oe=window.setTimeout(he,6e4)}function We(){O.school.subscribe(function(){fe(void 0),he()}),he()}var ge=p().pureComputed(function(){var e;return(null===(e=fe())||void 0===e||null===(e=e.mis)||void 0===e?void 0:e.name)||"your MIS"}),ve=p().pureComputed(function(){var e,n=null===(e=fe())||void 0===e?void 0:e.mis;return(null==n?void 0:n.supportsRegisterRead)&&!n.supportsRegisterWrite});t(32477);
1p().components.register("school-enquiry-popup",{viewModel:function(e){var n,t=e.kind,o=e.label,i=e.title,a=e.messageFieldsPreamble,r=e.initialMessage,M=e.multipleMessageFields,c=e.customClass,l=e.submitButtonText,d=e.postbox;return{kind:t,label:o,title:i,messageFieldsPreamble:a,multipleMessageFields:M,initialMessage:r,metadata:null!=s.m.user()?(n=s.m.school().fullName,{"School ID":s.m.school().externalId,"School Name":n}):void 0,customClass:c,submitButtonText:l,postbox:d}},template:'<enquiry-popup params="kind: kind,\n label: label,\n title: title,\n messageFieldsPreamble: messageFieldsPreamble,\n initialMessage: initialMessage,\n multipleMessageFields: multipleMessageFields,\n metadata: metadata,\n customClass: customClass,\n submitButtonText: submitButtonText,\n postbox: postbox"></enquiry-popup>'}),p().components.register("confirm-sync-setup",{viewModel:function(e){var n=e.open,t=e.confirm,o="sims"===e.mis.id,i=e.mis.name,a=p().pureComputed(function(){var e;return null===(e=O.school())||void 0===e?void 0:e.fullName}),s=p().pureComputed(function(){return O.mySchools().length>1});return{isOpen:n,isPairing:o,title:o?"Confirm Pairing":"Confirm Connection",misName:i,schoolName:a,multipleSchools:s,openSchoolSelection:function(){n(!1),setTimeout(function(){return M()(document).trigger("openOrgSelection")},150)},goBack:function(){n(!1)},confirmAndClose:function(){n(!1),t()}}},template:'\n <div data-bind="popover: {isModal: true, dim: true, open: isOpen}">\n <div class="popoverBody confirmSyncSetup">\n <div class="popoverTitle">{{title}}</div>\n <div class="body">\n <p>This will\n {{#if isPairing}}complete pairing{{/if}}\n {{#ifnot isPairing}}create a connection with {{misName}}{{/if}}\n for <b>{{schoolName}}</b>.</p>\n <p>If youâre responsible for more than one school, please double-check\n {{#if isPairing}}youâre pairing with the correct schoolâs SIMS installation.{{/if}}\n {{#ifnot isPairing}}this is the correct school.{{/if}}\n </p>\n <p>\n \x3c!-- ko if: multipleSchools --\x3e\n <a data-bind="click: openSchoolSelection, clickBubble: false">Switch schools</a> or\n <school-enquiry-popup\n params="kind: \'support\',\n label: \'contact us\',\n initialMessage: \'I canât find the correct school to connect Studybugs Sync to. Iâm looking for [WHAT SCHOOL?]\'">\n </school-enquiry-popup> if youâre looking for a different school.\n \x3c!-- /ko --\x3e\n \x3c!-- ko ifnot: multipleSchools --\x3e\n <school-enquiry-popup\n params="kind: \'support\',\n label: \'Contact us\',\n initialMessage: \'I canât find the correct school to connect Studybugs Sync to. Iâm looking for [WHAT SCHOOL?]\'">\n </school-enquiry-popup> if youâre looking for a different school.\n \x3c!-- /ko --\x3e\n </p>\n <div class="submit">\n <button class="post button button-primary" data-bind="click: confirmAndClose">Go Ahead</button>\n <a class="button button-secondary" data-bind="click: goBack">Cancel</a>\n </div>\n </div>\n </div>\n </div>'});var be=function(e){var n=(0,D.$)("success"),t="true"===n,o="false"===n;n&&history.replaceState&&history.replaceState(null,null,R.Ay.removeParamFromUrl(window.location.pathname,"success"));var i=p().observable(),a=p().pureComputed(function(){var n;return(null===(n=fe())||void 0===n||null===(n=n.mis)||void 0===n?void 0:n.id)===e.id}),r=p().pureComputed(function(){return"Connect to ".concat(e.name)}),M=p().observable(a()&&!n);return a.subscribe(function(e){e&&M(!0)}),{mis:e,syncConfirmationOpen:i,confirmConnection:function(){window.location=s.m.schoolPath("syncsetup/".concat(e.name.toLocaleLowerCase()))},connectStart:function(){i(!0)},buttonText:r,connected:a,connectSuccess:t,connectError:o,showAlreadyConnected:M,connectAgain:function(){M(!1)}}},ye=(t(60825),t(50388)),we=t(53954),ke=t(15361);function xe(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(xe=function(){return!!e})()}var Te=function(){return(0,j.A)(function e(){var n,t=this;(0,B.A)(this,e),this.pairingCode=void 0,this.pairingCodeValidationMessage=void 0,this.pairingCodeIsValid=void 0,this.pairingCodeHasFocus=void 0,this.pairingCodeValidationSuspended=void 0,this.pairingCode=p().observable(),this.pairingCodeValidationMessage=p().observable(),this.pairingCodeIsValid=p().computed(function(){return!t.pairingCodeValidationMessage()}),this.pairingCodeHasFocus=p().observable(),this.pairingCodeValidationSuspended=p().observable(!0);var o=!1;null===(n=this.pairingCodeHasFocus)||void 0===n||n.subscribe(function(e){e&&(o=!0),o&&!e&&t.pairingCodeValidationSuspended(!1)}),this.pairingCode.subscribe(function(e){t.validatePairingCode(e)}),this.validatePairingCode(this.pairingCode())},[{key:"validatePairingCode",value:function(e){null!=e&&e.length?e.length>6?this.pairingCodeValidationMessage("Too long"):e.length<6?this.pairingCodeValidationMessage("Too short"):this.pairingCodeValidationMessage(void 0):this.pairingCodeValidationMessage("Code required")}}])}(),Se=function(e){function n(){var e,t,o,i;return(0,B.A)(this,n),t=this,o=n,o=(0,we.A)(o),(e=(0,ye.A)(t,xe()?Reflect.construct(o,i||[],(0,we.A)(t).constructor):o.apply(t,i))).selectedSchool=void 0,e.submitting=void 0,e.submitError=void 0,e.submitEnabled=void 0,e.done=void 0,e.ssDownloadUrl=void 0,e.pairingConfirmationOpen=void 0,e.submit=e.submit.bind(e),e.confirmPairing=e.confirmPairing.bind(e),e.success=e.success.bind(e),e.failure=e.failure.bind(e),e.selectedSchool=I.school,e.submitting=p().observable(),e.submitError=p().observable(),e.submitEnabled=p().computed(function(){return e.pairingCodeIsValid()&&!e.submitError()&&!e.submitting()}),e.pairingCode.subscribe(function(){e.submitError(!1)}),e.done=p().observable(),e.ssDownloadUrl=p().computed(function(){var n;return"/school/".concat(null===(n=e.selectedSchool())||void 0===n?void 0:n.id,"/downloads/StudybugsSyncSetup.exe")}),e.pairingConfirmationOpen=p().observable(),e}return(0,ke.A)(n,e),(0,j.A)(n,[{key:"submit",value:function(){this.pairingCodeValidationSuspended(!1),this.submitEnabled()&&this.pairingConfirmationOpen(!0)}},{key:"confirmPairing",value:function(){var e=this;return this.submitting(!0),y.pair(this.selectedSchool().id,this.pairingCode(),function(){return e.success()},function(n){return e.failure(n)})}},{key:"success",value:function(){this.submitting(!1),this.done(!0),this.pairingCodeValidationSuspended(!0),this.pairingCode("")}},{key:"failure",value:function(e){this.submitting(!1);var n=e.responseJSON;if(null!=n&&n.failures){var t=null!=n.failures[0]?n.failures[0].code:void 0;return"pairingCodeExpired"===t?(this.submitError("This pairing code has expired. In the interests of security, pairing codes need to be entered within 10 minutes. Please go back to your Studybugs Sync installation and generate a fresh pairing code."),!1):"pairingCodeNotFound"!==t||(this.submitError("We donât recognize this pairing code. Did you enter it correctly?"),!1)}}}])}(Te),Ce=(t(61168),t(68156),t(64643));function Pe(e,n,t){(function(e,n){if(n.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,n),n.set(e,t)}function Ie(e,n){return e.get(Le(e,n))}function Oe(e,n,t){return e.set(Le(e,n),t),t}function Le(e,n,t){if("function"==typeof e?e===n:e.has(n))return arguments.length<3?n:t;throw new TypeError("Private element is not present on this object")}var Ee=new WeakMap,Ne=new WeakMap,Fe=new WeakMap,Re=new WeakMap,De=new WeakMap,Be=function(){return(0,j.A)(function e(n,t,o,i,a){(0,B.A)(this,e),Pe(this,Ee,void 0),Pe(this,Ne,void 0),Pe(this,Fe,void 0),Pe(this,Re,void 0),Pe(this,De,void 0),Oe(Ee,this,n),Oe(Ne,this,t),Oe(Fe,this,o),Oe(Re,this,i),Oe(De,this,a)},[{key:"video",get:function(){return Ie(Ee,this)}},{key:"publicId",get:function(){return Ie(Ee,this).logId}},{key:"title",get:function(){return Ie(Ne,this)}},{key:"presenterName",get:function(){return Ie(Fe,this)}},{key:"durationText",get:function(){var e=Math.floor(Ie(Re,this)/60),n=String(Ie(Re,this)%60).padStart(2,"0");return"".concat(e,":").concat(n)}},{key:"date",get:function(){return Ie(De,this)}}])}(),je="Weâd like to show you a Studybugs training video here but your browser doesnât support it.",$e="https://dwstfu6l866x4.cloudfront.net/training/",Ue=[new Be(new Ce.C("".concat($e,"Quick+Intro+to+Studybugs+Assistant.mp4"),"".concat($e,"Quick+Intro+to+Studybugs+Assistant.jpg"),je,"assistant-intro"),"Quick Intro to Studybugs Assistant","Lee Ellis",220,new m.y("2022-06-30")),new Be(new Ce.C("".concat($e,"How+to+Print+a+Fire+Register.mp4"),"".concat($e,"How+to+Print+a+Fire+Register.jpg"),je,"print-fire-registers"),"How to Print a Fire Register","Lee Ellis",35,new m.y("2022-06-30")),new Be(new Ce.C("".concat($e,"Quick+Guide+to+Studybugs+Registers.mp4"),"".concat($e,"Quick+Guide+to+Studybugs+Registers.jpg"),je,"registers-guide"),"Quick Guide to Studybugs Registers","Lee Ellis",224,new m.y("2022-06-30")),new Be(new Ce.C("".concat($e,"How+to+Search+for+Messages.mp4"),"".concat($e,"How+to+Search+for+Messages.jpg"),je,"search-messages"),"How to Search for Messages","Lee Ellis",51,new m.y("2022-06-30")),new Be(new Ce.C("".concat($e,"Message+Templates.mp4"),"".concat($e,"Message+Templates.jpg"),je,"message-templates"),"Message Templates","Lee Ellis",129,new m.y("2022-09-02")),new Be(new Ce.C("".concat($e,"Matching+Up+Records.mp4"),"".concat($e,"Matching+Up+Records.jpg"),je,"match-up-records"),"Matching Up Records","Lee Ellis",199,new m.y("2022-06-30")),new Be(new Ce.C("".concat($e,"Parent+Alerts.mp4"),"".concat($e,"Parent+Alerts.jpg"),je,"parent-alerts"),"Parent Alerts","Siân Mabberley",595,new m.y("2026-04-11")),new Be(new Ce.C("".concat($e,"Getting+Started+with+Studybugs+Actions.mp4"),"".concat($e,"Getting+Started+with+Studybugs+Actions.jpg"),je,"actions-intro"),"Getting Started with Studybugs Actions","Siân Mabberley",594,new m.y("2026-03-27"))];function He(e,n){var t=null!=e&&e.length?e:"Studybugs â Help Videos";t+=null!=n&&n.length?" â ".concat(n):"",document.title=t}p().components.register("training-screen",{viewModel:function(){var e,n=document.title,t=(e=window.location.pathname.split("/").pop(),c.Ay.find(Ue,function(n){return n.publicId===e}));
1He(n,null==t?void 0:t.title);var o=p().observable(t||Ue[0]),i=p().observable(),a=o.subscribe(function(e){M()(document).trigger("goto",[s.m.schoolPath("help/training/".concat(e.publicId))]),He(n,e.title),window.scroll(0,0),window.setTimeout(function(){var e;return null===(e=i())||void 0===e?void 0:e.play()},1)});return{tiles:Ue,selectTile:function(e){return o(e)},selectedTile:o,videoElement:i,dispose:function(){return a.dispose()}}},template:'\n {{#with selectedTile}}\n <selected-tile>\n <video-player params="video: video, videoElement: $component.videoElement"></video-player>\n <video-title>{{title}}</video-title>\n <video-presenter>{{presenterName}}</video-presenter>\x3c!--\n --\x3e<video-date>{{date.format("D MMM YYYY")}}</video-date>\n </selected-tile>\n {{/with}}\n {{#foreach tiles}}\n {{#ifnot $data === $component.selectedTile()}}\n <video-tile data-bind="click: $component.selectTile">\n <img src="{{video.posterUri}}" alt="Video thumbnail" />\n <video-title>{{title}}</video-title>\n <video-duration>{{durationText}}</video-duration>\n </video-tile>\n {{/ifnot}}\n {{/foreach}}'});var Ve=function(){return{downloadLink:p().pureComputed(function(){return O.schoolPath("downloads/studybugssyncpp/Install%20Studybugs%20Sync%20for%20ParentPay.exe")})}},Ge="If youâre having issues with stale data,\n <school-enquiry-popup params=\"kind: 'support', label: 'let us know'\"></school-enquiry-popup>.",ze="The best way to ensure records are up to date is to use Studybugs for updating your registers (see\n <a data-bind=\"goto: s.m.schoolPath('help/attendance/postingtotheregister')\">Posting to the Register</a>).";p().components.register("parent-alert-mis-explainer",{viewModel:function(){return{isSpreadsheet:p().pureComputed(function(){var e;return null===(e=fe())||void 0===e||null===(e=e.mis)||void 0===e?void 0:e.isManual}),isArbor:p().pureComputed(function(){var e;return"arbor"===(null===(e=fe())||void 0===e||null===(e=e.mis)||void 0===e?void 0:e.id)}),isWonde:p().pureComputed(function(){var e,n=null===(e=fe())||void 0===e||null===(e=e.mis)||void 0===e?void 0:e.id;return n&&n.startsWith("wonde-")})}},template:"\n {{#ifnot isSpreadsheet}}\n <h2>Alerts Will Only Send if Registers Are Syncing</h2>\n <p>Parent alerts wonât send if your register data is out of date, to avoid the possibility of alerts being sent\n to parents mistakenly. This applies to all messages in the Parent Alert category, whether theyâre scheduled\n automatically or you try to manually send one.\n {{#if !isWonde() && !isArbor()}}\n ".concat(ze,"\n ").concat(Ge,"\n {{/if}}\n </p>\n {{#if isArbor}}\n <p>The register data Arbor sends us can be up to 10 minutes delayed at peak times (ie 9am and 1pm), so\n please bear this in mind when sending alerts.\n ").concat(ze,"\n ").concat(Ge,"\n </p>\n {{/if}}\n {{#if isWonde}}\n <p>We connect to your MIS via Wonde which means register data is delayed by up to two hours. To ensure the latest\n register data is in Studybugs you must use Studybugs to update your registers (see\n <a data-bind=\"goto: s.m.schoolPath('help/attendance/postingtotheregister')\">Posting to the Register</a>),\n rather than editing registers via your MIS.\n ").concat(Ge,"\n </p>\n {{/if}}\n {{/ifnot}}\n ")}),p().components.register("mis-text",{viewModel:function(e){var n=p().pureComputed(function(){var e;return null===(e=fe())||void 0===e||null===(e=e.mis)||void 0===e?void 0:e.isManual}),t=p().pureComputed(function(){var e;return"sims"===(null===(e=fe())||void 0===e||null===(e=e.mis)||void 0===e?void 0:e.id)}),o=p().pureComputed(function(){var e;return"arbor"===(null===(e=fe())||void 0===e||null===(e=e.mis)||void 0===e?void 0:e.id)}),i=p().pureComputed(function(){var e;return"bromcom"===(null===(e=fe())||void 0===e||null===(e=e.mis)||void 0===e?void 0:e.id)}),a=p().pureComputed(function(){return!n()||e.showForSpreadsheet});return{_:c.Ay,yourMIS:ge,show:a,isSpreadsheet:n,isSIMS:t,isArbor:o,isBromcom:i}},template:"{{#template {nodes: $componentTemplateNodes, if: show, data: _.extend($data, $parentContext.$data)}}}\n {{/template}}{{#if $componentTemplateNodes.length === 0 && show()}}{{yourMIS}}{{/if}}"});var Ye=t(64340),_e=t(41933),Ke={"id:missing":"Required","id:tooLong":"Too long","username:missing":"Required","username:tooLong":"Too long","password:missing":"Required","password:tooLong":"Too long"};function Je(e){return e?e.length>128?"tooLong":void 0:"missing"}function Xe(e){return e?e.length>128?"tooLong":void 0:"missing"}function Qe(e){return e?e.length>128?"tooLong":void 0:"missing"}function Ze(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function en(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};
1n%2?Ze(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Ze(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}p().components.register("bromcom-sync-setup",{viewModel:function(e){var n={name:"Bromcom",id:"bromcom"},t=new Ye._I("id",Je),o=new Ye._I("username",Xe),i=new Ye._I("password",Qe),a=new Ye.qW([t,o,i],Ke),s=p().pureComputed(function(){return a.treeIsValid()&&!r()&&!M()}),r=p().observable(),M=p().observable(),c=p().observable(),l=p().observable(),d=p().pureComputed(function(){var e;return(null===(e=fe())||void 0===e||null===(e=e.mis)||void 0===e?void 0:e.id)===n.id}),u=p().observable(d()),A=(0,_e.em)(e.permissions.map(function(e){return"<term>".concat(e,"</term>")}));d.subscribe(function(e){e&&!M()&&u(!0)});var q=p().pureComputed(function(){var e=r();return"Connect".concat(e?"ing":""," to ").concat(n.name)});return{idField:t,usernameField:o,passwordField:i,submitEnabled:s,buttonText:q,mis:n,syncConfirmationOpen:l,confirmConnection:function(){var e;r(!0);var n=null===(e=O.school())||void 0===e?void 0:e.id,a={schoolId:t.value(),username:o.value(),password:i.value()},s=function(){M(!1),c(!0)};y.connectToBromcom(n,a,r,function(e){e?(M(!0),c(!1),he()):s()},s)},connectStart:function(){M(!1),c(!1),l(!0)},connectError:c,connectSuccess:M,showAlreadyConnected:u,connectAgain:function(){u(!1)},permissionsString:A}},template:'\n {{#if showAlreadyConnected}}\n <p>Studybugs is already connected to Bromcom.</p>\n <p>You can <a href="#" data-bind="click: connectAgain">connect again</a> if you need to update Bromcom\n permissions or if youâre experiencing issues.</p>\n {{/if}}\n {{#ifnot showAlreadyConnected}}\n <ol>\n <li><p>Create a new <term>System User</term> in Bromcom with the <term>Third Party</term> and\n <term>ThirdParty - Att WriteBack</term> roles.</p>\n <togglable-item>\n <a href="#" data-bind="click: toggle">\n <span data-bind="ifnot: on">Show me how</span>\n <span data-bind="if: on">Hide</span>\n </a>\n <div data-bind="if: on">\n <ol>\n <li>In Bromcom, go to <term>Modules</term> > <term>Setup</term> > <term>System Security</term> >\n <term>System Users</term>.</li>\n <li>Click on <term>New</term> to create a new account.</li>\n <li>Select the <term>Create a New User</term> radio button and fill in the <term>First Name</term>,\n <term>Last Name</term>, <term>Username</term> and <term>Password</term> fields. You can enter\n âStudybugsâ as the first name and âSyncâ as the last name. On this page tick the\n <term>Third Party</term> and <term>Third Party Write Back</term> roles.</li>\n <li>Press the <term>Save</term> button to create the new user. Keep a note of the username and password.</li>\n </ol>\n </div>\n </togglable-item>\n </li>\n <li>\n <p>Give the Bromcom user <term>Third Party Access Permissions</term> to: {{{permissionsString}}}.</p>\n <togglable-item>\n <a href="#" data-bind="click: toggle">\n <span data-bind="ifnot: on">Show me how</span>\n <span data-bind="if: on">Hide</span>\n </a>\n <div data-bind="if: on">\n <ol>\n <li>In Bromcom, go to <term>Modules</term> > <term>Setup</term> >\n <term>Third Party Access Permissions and Logs</term>.</li>\n <li>Select the Studybugs user account in the dropdown at the top of the page.</li>\n <li>Click <term>Manage Permissions</term> and select the permissions above.</li>\n </ol>\n </div>\n </togglable-item>\n </li>\n <li>\n <p>Enter the user information below.</p>\n <togglable-item>\n <a href="#" data-bind="click: toggle">
1\n <span data-bind="ifnot: on">Where do I find our Bromcom school ID?</span>\n <span data-bind="if: on">Hide</span>\n </a>\n <div data-bind="if: on">\n When youâre logged in to Bromcom, click on your school name at the top of the page.\n Your Bromcom school ID is shown next to âIDâ.\n </div>\n </togglable-item>\n <form autocomplete="off">\n <ul>\n <li>\n <span class="label">Bromcom School ID</span>\n <div class="textInput">\n <div class="dots"></div>\n <input type="text"\n name="schoolId"\n autocomplete="off"\n spellcheck="false"\n data-bind="textInput: idField.value,\n valueUpdate: [\'afterkeydown\',\'input\'], hasFocus: idField.hasFocus">\n </div>\n <span class="error" data-bind="if: idField.showFailure">\n <span data-bind="text: idField.validationMessage"></span>\n </span>\n </li>\n <li>\n <span class="label">Bromcom Username from Step 1</span>\n <div class="textInput">\n <div class="dots"></div>\n <input type="text"\n name="username"\n autocomplete="off"\n spellcheck="false"\n data-bind="textInput: usernameField.value,\n valueUpdate: [\'afterkeydown\',\'input\'],\n hasFocus: usernameField.hasFocus">\n </div>\n <span class="error" data-bind="if: usernameField.showFailure">\n <span data-bind="text: usernameField.validationMessage"></span>\n </span>\n </li>\n <li>\n <span class="label">Bromcom Password from Step 1</span>\n <div class="textInput">\n <div class="dots"></div>\n <input type="password"\n name="password"\n autocomplete="new-password"\n spellcheck="false"\n data-bind="textInput: passwordField.value,\n valueUpdate: [\'afterkeydown\',\'input\'], hasFocus: passwordField.hasFocus">\n </div>\n <span class="error" data-bind="if: passwordField.showFailure">\n <span data-bind="text: passwordField.validationMessage"></span>\n </span>\n </li>\n </ul>\n <input type="submit" class="button button-primary"\n data-bind="click: connectStart, enable: submitEnabled, value: buttonText, clickBubble: false"/>\n <div data-bind="if: connectError" class="error">\n <p>We couldnât connect to Bromcom using the details above. Please double-check and try again or\n <school-enquiry-popup\n params="kind: \'support\',\n label: \'get in touch\',\n initialMessage: \'Something went wrong connecting to Bromcom\'"></school-enquiry-popup>.</p>\n </div>\n <div data-bind="if: connectSuccess" class="success">\n <p>Successfully connected to Bromcom!</p>\n </div>\n </form>\n </li>\n </ol>\n <final-mis-connect-message></final-mis-connect-message>\n {{/if}}\n <confirm-sync-setup params="mis: mis, open: syncConfirmationOpen, confirm: confirmConnection"></confirm-sync-setup>'}),p().components.register("introduction-mis-message",{viewModel:function(){return{hasDataCapture:p().pureComputed(function(){var e;return Boolean(null===(e=I.school())||void 0===e||null===(e=e.addOns)||void 0===e?void 0:e.dataCapture)})}},template:"\n {{#ifnot hasDataCapture}}\n <p><term>Studybugs Sync</term> is Studybugsâs connection with your schoolâs MIS (Management Information System),\n automatically cross-checking the details of pupils and parents and (if you have the Studybugs\n <term>Attendance</term> add-on) entering absence reports in the register. It can be set up in a few minutes\n and this only needs to be done once. To get started, choose your MIS below:</p>\n {{/ifnot}}
1\n {{#if hasDataCapture}}\n <p><term>Studybugs Sync</term> is Studybugsâs connection with your register-taking system (MIS). It can be\n set up in a few minutes and this only needs to be done once. To get started, choose your MIS below:</p>\n {{/if}}\n "}),p().components.register("final-mis-connect-message",{viewModel:function(e){var n,t;return{startingText:null!==(n=null==e||null===(t=e.data)||void 0===t?void 0:t.isSims)&&void 0!==n&&n?"Studybugs Sync should start running in a few moments":"Studybugs Sync will start running on Studybugsâs servers in a few moments",hasDataCapture:p().pureComputed(function(){var e;return Boolean(null===(e=O.school())||void 0===e||null===(e=e.addOns)||void 0===e?void 0:e.dataCapture)}),goToDashboard:function(){M()(document).trigger("goto",[O.schoolPath("dashboard/0")])}}},template:'\n {{#ifnot hasDataCapture}}\n <p>Thatâs it! {{startingText}} and will automatically enter absence reports as theyâre received. On the absence\n reports page youâll see them being ticked off as you watch.</p>\n {{/ifnot}}\n {{#if hasDataCapture}}\n <p>Thatâs it! {{startingText}} and will download the initial information. Head back to your\n <a href="#" data-bind="click: goToDashboard">dashboard</a> to finish setting up.</p>\n {{/if}}\n '});var nn=p().observable((0,l.Yn)());
1M()(document).on("routeChange",function(e,n){nn(n)});function tn(e){return e.indexOf("/help")<0?"":e.split("/help").slice(1).join("/help").split("?")[0].split("#")[0]}var on={init:function(e){var n=[],t=q.A.util.fragmentLoader.create(".helpBody"),o=p().observable(),i=p().observable(),a=p().observable(),s=p().pureComputed(function(){var e;return null===(e=fe())||void 0===e||null===(e=e.mis)||void 0===e?void 0:e.id}),r=p().pureComputed(function(){var e;return!0===(null===(e=fe())||void 0===e||null===(e=e.mis)||void 0===e?void 0:e.isManual)}),c=p().pureComputed(function(){var e;return(null===(e=fe())||void 0===e||null===(e=e.mis)||void 0===e?void 0:e.name)||"Your MIS"}),d=p().pureComputed(function(){return"sims"===s()?"admitted":"enrolled"}),u=p().observable(!1),A=x({title:"Getting Started Guide",relativePath:"/getstarted",useContentStyles:!0,hide:p().pureComputed(function(){return!O.school().getStartedFlowHasItems})}),m=p().pureComputed(function(){return"arbor"===s()?"as legal guardian":"with parental responsibility"}),f=function(){n.forEach(function(e){return e.dispose()})},h=[k({items:[x({title:"User Guide Home",relativePath:""}),A]}),k({label:"Key Topics",items:[x({title:"Messages",relativePath:"/messages"}),x({title:"Receiving Absence Reports",relativePath:"/absreps"}),x({title:"Creating Alerts",relativePath:"/alerts"}),x({title:"Managing Staff Access",relativePath:"/managestaff"}),x({title:"Telling Parents",relativePath:"/telling"}),x({title:"Training Videos",relativePath:"/training",selectForSubPaths:!0}),x({title:"Further Help",relativePath:"/furtherhelp"})]}),k({label:"Messages",items:[x({title:"Creating New Messages",relativePath:"/messages/creating"}),x({title:"Navigating Messages",relativePath:"/messages/navigatingmessages"}),x({title:"Using Message Templates",relativePath:"/messages/templates"}),x({title:"Personalising Messages",relativePath:"/messages/personalisation"}),x({title:"Setting Up Messaging Groups",relativePath:"/messages/groups"}),x({title:"Messaging Parents of Future Pupils",relativePath:"/messages/futurepupils"}),x({title:"Parents Not Receiving Messages",relativePath:"/messages/notreceiving"})]}),k({label:"Attendance",items:[x({title:"Using the Attendance Dashboard",relativePath:"/attendance/dashboard"}),x({title:"Posting to the Register",relativePath:"/attendance/postingtotheregister"}),x({title:"Automatic Entry of Absence Reports",relativePath:"/attendance/absreps"}),x({title:"Attendance Codes",relativePath:"/attendance/codes"}),x({title:"Staff Alerts",relativePath:"/attendance/alerts"}),x({title:"Parent Alerts",relativePath:"/attendance/parentalerts"}),x({title:"Parent Alerts Template Library",relativePath:"/attendance/parentalertstemplatelibrary"}),x({title:"Studybugs Assistant",relativePath:"/attendance/assistant"}),x({title:"Covid-19 Codes",relativePath:"/attendance/covid19codes",hide:!0})]}),k({label:"Registers",items:[x({title:"Registers in the Classroom ",relativePath:"/registers/registersintheclassroom"}),x({title:"Lunches",relativePath:"/registers/lunches"}),x({title:"Fire Registers",relativePath:"/registers/fireregisters"})]}),k({label:"Actions",items:[x({title:"Studybugs Actions",relativePath:"/actions/intro"})]}),k({label:"Wellbeing",items:[x({title:"Early Access",relativePath:"/wellbeing/intro"})]}),k({label:"In More Detail",items:[x({title:"Matching Up Records",relativePath:"/matching"}),x({title:"Having Studybugs Open Automatically",relativePath:"/openonstartup"}),x({title:"Having Studybugs Post to Lesson Registers",relativePath:"/attendance/lessonregisters",hide:function(){var e=s();return!("arbor"===e||"bromcom"===e||"sims"===e)}}),x({title:"Enabling Desktop Notifications",relativePath:"/enablingnotifications"}),x({title:"Setting Up Studybugs Sync",relativePath:"/studybugssync",selectForSubPaths:!0,excludedSubPaths:["/studybugssync/parentpay"]}),x({title:"Studybugs Sync for ParentPay",relativePath:"/studybugssync/parentpay"})]})],W=[k({items:[x({title:"User Guide Home",relativePath:""}),A,x({title:"Setting Up Studybugs Sync",relativePath:"/studybugssync",selectForSubPaths:!0,hide:function(){return!!r()}})]})],g=p().pureComputed(function(){return O.isAlternativeProvision()?W:h}),v=p().computed(function(){var e,n;if(!(null===(e=fe())||void 0===e||!e.mis)){var t=null===(n=O.school)||void 0===n?void 0:n.call(O),o=nn();if(t&&o){var i=o.split("?")[0].split("#")[0];if(/^\/school\/[^/]+\/help/.test(i)){var a=(g()||[]).some(function(e){var n=!!e.hide&&!!p().unwrap(e.hide);return e.items.some(function(e){var t="function"==typeof e.isHidden?e.isHidden():p().unwrap(e.isHidden);if(!(n||t))return!1;var o=p().unwrap(e.path);return!!o&&(i===o||i.startsWith("".concat(o,"/")))})});a&&M()(document).trigger("goto",[O.schoolPath("help")])}}}});n.push(v);var b=function(e,n){var t=function(e){var n=/^\/school\/[^/]+\/help/.test(e),t=tn(e);if(!O.isAlternativeProvision())return null;var o=fe();if(null==o||!o.mis||void 0===t)return null;if(!n)return null;if(!O.school().getStartedFlowHasItems&&o.mis.isManual)return"";var i=t.split("/").slice(1),a=(0,E.A)(i,2),s=a[0],r=a[1],M="studybugssync"===s,c="studybugssync"===s&&"parentpay"===r;if(void 0===s||""===s||"getstarted"===s)return null;if(!o.mis.isManual&&M){if(M&&!c)return null;if(c)return"help/studybugssync"}return"help"}(e);return null!==t&&(M()(document).trigger("goto",[O.schoolPath(t),{onLoad:n}]),!0)},y=p().computed(function(){var e=nn(),n=s();e&&n&&b(e)});function w(){a(tn(location.pathname)),(0,N.c)()}function k(e){return en(en({},e),{},{hide:p().pureComputed(e.hide?e.hide:function(){return!1})})}function x(e){var n=p().pureComputed(function(){return O.schoolPath("help".concat(e.relativePath))}),t=p().pureComputed(function(){var n=a(),t=n===e.relativePath,o=!1;return e.selectForSubPaths&&(o=!(null==n||!n.startsWith(e.relativePath)))&&e.excludedSubPaths&&(o=!e.excludedSubPaths.some(function(e){return e===n})),t||o}),o=p().pureComputed(function(){return void 0===e.hide||"boolean"==typeof e.hide?!!e.hide:e.hide()}),s={relativePath:e.relativePath,label:e.title,path:n,isSelected:t,isHidden:o},r=function(n){n&&(u(!!e.useContentStyles),i(s))};return t.subscribe(r),r(t()),s}function T(n){o()?n():e({html:'\n <div class="body">\n <help>\n <div class="menu">\n <ul>\n {{#foreach menu}}\n {{#ifnot $data.hide}}\n <li>\n <div data-bind="if: $data.label"><div class="section" data-bind="text: label"></div></div>\n <ul data-bind="foreach: items">\n <li data-bind="css: {sel: isSelected, hide: isHidden}">\n <a data-bind="goto: path, text: label"></a>\n </li>\n </ul>\n </li>\n {{/if}}\n {{/foreach}}\n </ul>\n </div>\n <div class="helpContent" data-bind="css: { useContentStyles: $data.useContentStyles }">\n <div class="helpBody"></div>\n </div>\n </help>\n </div>',binding:{school:O.school,isAlternativeProvision:O.isAlternativeProvision,menu:g,misStringTitle:c,markedWithPR:m,futurePupilsMISTerm:d,openUserSettings:F.O,useContentStyles:u,dispose:f}},function(){o(!0),n()})}n.push(y),(0,l.IC)({"^/school/[^/]+/help/training":function(e,n){var o;b(n,null==e?void 0:e.onLoad)||null!==(o=a())&&void 0!==o&&o.startsWith("/training")||T(function(){return t.load({path:"/f/s/h/training"},w)})}
1,"^/school/[^/]+/sicklysyncinstructions":function(e){M()(document).trigger("goto",[O.schoolPath("help/studybugssync"),e])},"^/school/[^/]+/studybugssyncinstructions":function(e){M()(document).trigger("goto",[O.schoolPath("help/studybugssync"),e])},"^/school/[^/]+/help":function(e,n){b(n,null==e?void 0:e.onLoad)||T(function(){return t.load({path:n.replace(new RegExp("^/school/[^/]+/help"),"/f/s/h"),binding:n.indexOf("/studybugssync/sims")>-1?new Se:n.indexOf("/studybugssync/arbor")>-1?be({id:"arbor",name:"Arbor"}):n.indexOf("/studybugssync/parentpay")>-1?Ve():void 0},w)})}})}},an=t(23158);function sn(){an.A.getMySchools(function(e){O.mySchools(c.Ay.map(e,function(e){return e.regGroups=p().observableArray(e.regGroups),e.coverGroups=p().observableArray(e.coverGroups),e.iconUrl=R.Ay.schoolIconUrl(e.externalId),e.showAnnouncement=p().observable(e.showAnnouncement),e}))})}function rn(e,n,t){(function(e,n){if(n.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,n),n.set(e,t)}function Mn(e,n){return e.get(ln(e,n))}function cn(e,n,t){return e.set(ln(e,n),t),t}function ln(e,n,t){if("function"==typeof e?e===n:e.has(n))return arguments.length<3?n:t;throw new TypeError("Private element is not present on this object")}var dn=new WeakMap,un=new WeakMap,An=new WeakMap,pn=new WeakMap,qn=new WeakMap,mn=new WeakMap,fn=new WeakMap,hn=function(){return(0,j.A)(function e(n){var t=n.id,o=n.versionId,i=n.categoryId,a=n.name,s=n.subject,r=n.content,M=n.interventionsUsing;(0,B.A)(this,e),rn(this,dn,void 0),rn(this,un,void 0),rn(this,An,void 0),rn(this,pn,void 0),rn(this,qn,void 0),rn(this,mn,void 0),rn(this,fn,void 0),cn(dn,this,t),cn(un,this,o),cn(An,this,i),cn(pn,this,a),cn(qn,this,s),cn(mn,this,r),cn(fn,this,M)},[{key:"id",get:function(){return Mn(dn,this)}},{key:"versionId",get:function(){return Mn(un,this)}},{key:"categoryId",get:function(){return Mn(An,this)}},{key:"name",get:function(){return Mn(pn,this)}},{key:"subject",get:function(){return Mn(qn,this)}},{key:"content",get:function(){return Mn(mn,this)}},{key:"interventionsUsing",get:function(){return Mn(fn,this)}}])}(),Wn=new WeakMap,gn=new WeakMap,vn=function(){return(0,j.A)(function e(n){var t=n.text,o=n.files;(0,B.A)(this,e),rn(this,Wn,void 0),rn(this,gn,void 0),cn(Wn,this,t),cn(gn,this,o)},[{key:"text",get:function(){return Mn(Wn,this)}},{key:"files",get:function(){return Mn(gn,this)}}])}(),bn=new WeakMap,yn=new WeakMap,wn=new WeakMap,kn=new WeakMap,xn=new WeakMap,Tn=new WeakMap,Sn=new WeakMap,Cn=function(){return(0,j.A)(function e(n){var t=n.id,o=n.url,i=n.previewUrl,a=n.title,s=n.type,r=n.extension,M=n.size;(0,B.A)(this,e),rn(this,bn,void 0),rn(this,yn,void 0),rn(this,wn,void 0),rn(this,kn,void 0),rn(this,xn,void 0),rn(this,Tn,void 0),rn(this,Sn,void 0),cn(bn,this,t),cn(yn,this,o),cn(wn,this,i),cn(kn,this,a),cn(xn,this,s),cn(Tn,this,r),cn(Sn,this,M)},[{key:"id",get:function(){return Mn(bn,this)}},{key:"url",get:function(){return Mn(yn,this)}},{key:"previewUrl",get:function(){return Mn(wn,this)}},{key:"title",get:function(){return Mn(kn,this)}},{key:"type",get:function(){return Mn(xn,this)}},{key:"extension",get:function(){return Mn(Tn,this)}},{key:"size",get:function(){return Mn(Sn,this)}}])}();function Pn(e,n,t){(function(e,n){if(n.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,n),n.set(e,t)}function In(e,n){return e.get(Ln(e,n))}function On(e,n,t){return e.set(Ln(e,n),t),t}function Ln(e,n,t){if("function"==typeof e?e===n:e.has(n))return arguments.length<3?n:t;throw new TypeError("Private element is not present on this object")}var En=new WeakMap,Nn=new WeakMap,Fn=new WeakMap,Rn=new WeakMap,Dn=new WeakMap,Bn=new WeakMap,jn=new WeakMap,$n=new WeakMap,Un=function(){return(0,j.A)(function e(n){var t=n.templateVersionId,o=n.categoryName,i=n.categoryId,a=n.recipient,s=n.subject,r=n.text,M=n.files,c=n.templateName;(0,B.A)(this,e),Pn(this,En,void 0),Pn(this,Nn,void 0),Pn(this,Fn,void 0),Pn(this,Rn,void 0),Pn(this,Dn,void 0),Pn(this,Bn,void 0),Pn(this,jn,void 0),Pn(this,$n,void 0),On(En,this,t),On(Nn,this,o),On(Fn,this,i),On(Rn,this,a),On(Dn,this,s),On(Bn,this,r),On(jn,this,M),On($n,this,c)},[{key:"templateVersionId",get:function(){return In(En,this)}},{key:"categoryName",get:function(){return In(Nn,this)}},{key:"categoryId",get:function(){return In(Fn,this)}},{key:"recipient",get:function(){return In(Rn,this)}},{key:"subject",get:function(){return In(Dn,this)}},{key:"text",get:function(){return In(Bn,this)}},{key:"files",get:function(){return In(jn,this)}},{key:"templateName",get:function(){return In($n,this)}}])}();var Hn={sendTakeUpReminder:function(){var e=new Un({categoryName:"Notice",recipient:"Parents without Studybugs",subject:"Studybugs",text:"Hello,\n\nIn case you donât know already, ".concat(O.school().shortName," uses an efficie
1nt and secure system for reporting your childâs absence due to illness, called Studybugs.\n\nPlease get the free Studybugs app, or register on the Studybugs website, and use it to tell us if your childâs ill and unable to attend school.\n\nHereâs the link: https://studybugs.com/about/parents\n\nThanks!")});M()(document).trigger("messages.prefill-new-message",[e])},sendParentTimeInvitation:function(){var e=new Un({categoryName:"Notice",recipient:"All parents",subject:"Speak with a teacher online â book your Parent Time now!",text:"Hello,\n\nIf youâd like to speak with a teacher or other staff member, you can now do so online using a new system from Studybugs called âParent Timeâ.\n\nThe idea is simple: Teachers at ".concat(O.school().shortName," set aside time slots for speaking with parents over online video link. You can use these slots to discuss anything you like, at a time thatâs convenient for you, without having to come in to school.\n\nJust sign in to studybugs.com and select âSpeak With a Teacherâ. Find a teacher and time that suits, say in a few words what youâd like to discuss, and click to book. Youâll receive an email with a link to join the session, and reminders shortly beforehand. Thereâs nothing to install and you can join from any device.\n\nWe hope you find this a useful way to keep engaged with your childâs education!")});M()(document).trigger("messages.prefill-new-message",[e])}},Vn=t(16949),Gn=t(43635),zn=(t(43041),t(8963),t(58527));t(76798);p().components.register("licence-viewer",{viewModel:function(e){var n=e.apiPath,t=e.licenceUrl,o=e.isOpen,i=p().observable(),a=p().observableArray();zn.A.licenceAcceptances(n(),i,function(e){a(e)});var s=p().pureComputed(function(){var e=c.Ay.map(a(),function(e){return"".concat(e.name," on ").concat(H()(e.accepted).format(W.F.dateFormatMomentJs))});return(0,_e.em)(e)});return{fetchInProgress:i,acceptances:a,acceptedBy:s,isOpen:o,apiPath:n,licenceUrl:t,emailLinkText:"Email me a copy"}},template:'\n {{#if isOpen}}\n <div class="licence" data-bind="popover: {noLabel: true, isModal: true, dim: true, open: isOpen}">\n <div class="popoverTitle">Licence Terms</div>\n <div class="body">\n <licence-body params="url: licenceUrl"></licence-body>\n {{#ifnot fetchInProgress}}\n <p>These licence terms were accepted by {{acceptedBy}}.</p>\n <p><licence-emailer params="apiPath: apiPath, linkText: emailLinkText"></licence-emailer></p>\n {{/ifnot}}\n </div>\n </div>\n {{/if}}'});t(68972),t(26126),t(12732);var Yn=t(46770),_n=(t(31270),t(34683)),Kn=!0,Jn=window.s.params.uris.blog+"posts/schools-can-now-see-live-attendance-too",Xn='{{#if show}}\n <div>\n <div class="body">\n <announce-inline>\n <announce-content>\n <announce-date>23 September 2026</announce-date>\n <announce-h1>New: Share live attendance with schools</announce-h1>\n <announce-feature>\n Now you can share live attendance not just with commissioning LAs, but schools too.\n </announce-feature>\n <announce-feature>\n Just set the school for each placement and weâll take care of the rest.\n </announce-feature>\n <announce-feature>\n <a href="'.concat(Jn,'">Read more on our blog</a>.\n </announce-feature>\n </announce-content>\n <a href="#" class="dismiss button button-icon" data-bind="click: dismiss, disable: dismissing">').concat(_n,"\n </a>\n </announce-inline>\n </div>\n </div>\n {{/if}}");p().components.register("sb-announce",{viewModel:function(){var e=p().observable(window.location.href.indexOf("sickmap")>0),n=p().observable(window.location.href.indexOf("calendar")>0),t=p().observable(window.location.href.indexOf("getstarted")>0);M()(document).on("routeChange.announcement",function(o,i){e(i.indexOf("sickmap")>0),n(i.indexOf("calendar")>0),t(i.indexOf("getstarted")>0)});
1var o=p().pureComputed(function(){var o=O.school().showAnnouncement(),i=e(),a=n(),s=t();return o&&!i&&!a&&!s}),i=p().observable();return{globals:O,show:o,dismiss:function(){an.A.dismissAnnouncement(function(){c.Ay.each(O.mySchools(),function(e){e.showAnnouncement(!1)}),setTimeout(function(){return M()(document).trigger("auto-height-recalculate")},1)},i)},dismissing:i,dispose:function(){M()(document).off("routeChange.announcement")}}},template:Xn});var Qn=Kn,Zn=(t(71411),t(53986)),et=["schoolId"];function nt(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function tt(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?nt(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):nt(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}var ot,it=p().observable({}),at=p().pureComputed(function(){var e=O.school(),n=it(),t=n.schoolId,o=(0,Zn.A)(n,et);return e?t===e.id?tt(tt({},e.addOns),o):e.addOns:{}}),st=["attendance","registers","wellbeing"],rt=p().pureComputed(function(){var e=at();return c.Ay.some(st,function(n){return e[n]})}),Mt=p().observable(0);function ct(){lt()?(ot&&clearTimeout(ot),y.getNumMatchesRequired(O.school().id,function(e){Mt(e.numMatchesRequired)}),ot=setTimeout(ct,59e3)):ot&&clearTimeout(ot)}var lt=p().pureComputed(function(){var e;return c.Ay.contains(null===(e=O.school())||void 0===e?void 0:e.sections,"users")});O.school.subscribe(ct),M()(document).on("postponedMatchesCleared",function(e,n){return Mt(n)}),p().components.register("match-action-prompt",{viewModel:function(){var e=p().observable(!1),n=[];return n.push(e.subscribe(function(e){e||ct()})),{showDialog:e,matchClick:function(n,t){t.stopPropagation(),e(!0)},yourMIS:ge,dispose:function(){c.Ay.each(n,function(e){return e.dispose()})}}},template:'\n <p>We need your help â please\n <a data-bind="click: matchClick">match up records<mis-text> with {{yourMIS}}</mis-text></a>.</p>\n <div data-bind="popover: {isModal: true, dim: true, noLabel: true, open: showDialog}">\n <div class="popoverBody">\n <div class="popoverTitle">Matching Up</div>\n <matching-up class="body">\n <pupil-contact-matcher params="popoverOpen: showDialog"></pupil-contact-matcher>\n </matching-up>\n </div>\n </div>'}),p().components.register("sync-status-bar",{viewModel:function(e){var n=e.showing,t=p().pureComputed(function(){var e;return(null===(e=fe())||void 0===e?void 0:e.syncedOK)&<()&&Mt()>0}),o=p().pureComputed(function(){return O.schoolPath("help/studybugssync")}),i=[];return i.push(p().computed(function(){var e=fe();n(e&&(e.mis||rt())&&!e.syncedOK||t())})),{helpPath:o,syncStatus:fe,showing:n,showMatchActionPrompt:t,dispose:function(){c.Ay.each(i,function(e){return e.dispose()})}}},template:'\n {{#if showing}}\n <status-bar>\n {{#with syncStatus}}\n {{#ifnot mis}}\n <p>Studybugs needs to be connected with your MIS to enable your add-ons to work.</p>\n <p class="footnote">To set up Studybugs Sync look <a data-bind="goto: $component.helpPath">here</a>.</p>\n {{/ifnot}}\n {{#if mis}}\n {{#if pupilList.state === "notYetSynced"}}\n <p>Studybugs is connected to <mis-text></mis-text> and is now extracting data.</p>\n <p class="footnote">This message will disappear once setup is complete. If that takes longer than\n 15 minutes, please\n <school-enquiry-popup params="kind: \'support\', label: \'contact us\'"></school-enquiry-popup>.</p>\n {{/if}}\n {{#if pupilList.state === "stale"}}\n <p>We havenât been able to extract data from <mis-text></mis-text> recently.</p>\n <p class="footnote">Some data shown in Studybugs could be out-of-date. Please check <mis-text></mis-text>\n is operating as usual. If you need help\n <school-enquiry-popup params="kind: \'support\', label: \'contact us\'"></school-enquiry-popup>.</p>\n {{/if}}\n {{#if pupilList.state === "expired"}}\n <p>Weâve been unable to extract data from <mis-text></mis-text> in a while. Group messaging has now been\n disabled.</p>\n <p class="footnote">Please follow\n <a data-bind="goto: $component.helpPath">these instructions</a> to\n reconnect. If you need help\n <school-enquiry-popup params="kind: \'support\', label: \'contact us\'"></school-enquiry-popup>.</p>\n {{/if}}\n {{#if pupilList.state === "fresh"}}\n {{#if clientConnectionLost}}\n <p>Weâve lost our connection to <mis-text></mis-text>.</p>\n <p class="footnote">Please check the schoolâs <mis-text></mis-text> server and\n <a data-bind="goto: $component.helpPath">Studybugs Sync</a> installation.</p>\n {{/if}}\n {{/if}}\n {{/if}}\n {{/with}}\n {{#if showMatchActionPrompt}}\n <match-action-prompt></match-action-prompt>\n {{/if}}\n </status-bar>\n {{/if}}'});t(31736),t(62116),t(28491),t(77700),t(88444);var dt=t(21845);t(21298);p().components.register("log-entry-activity",{viewModel:function(e){var n,t,o=e.activity,i=e.triggerStylingRefresh,a=e.pupilId,s=e.pupilName,r=null===(n=e.useAvatars)||void 0===n||n,M=null!==(t=e.timeAndCategoryFirst)&&void 0!==t&&t;return{data:o,context:{pupil:{type:dt.L.pupil,pupilId:a,name:s,displayName:s}},timeAndCategoryFirst:M,useAvatars:r,triggerStylingRefresh:i}},template:'\n <log-action params="\n data: data.logEntry,\n context: context,\n hideDatesOnView: true,\n timeAndCategoryFirst: timeAndCategoryFirst,\n showStaffAvatars: useAvatars,\n triggerStylingRefresh: triggerStylingRefresh,\n "></log-action>\n '});t(35965);var ut='\n <svg viewBox="0 0 12.5 10.8" class="tick">\n <polyline fill="none" stroke-width="2" stroke-miterlimit="10" points="0.7,4.9 5,9.3 11.7,0.6 "/>\n </svg>',At='\n <svg viewBox="0 0 9.4 9.4" class="cross">\n <line stroke-width="2" stroke-miterlimit="10" x1="0.7" y1="8.7" x2="8.7" y2="0.7"/>\n <line stroke-width="2" stroke-miterlimit="10" x1="8.7" y1="8.7" x2="0.7" y2="0.7"/>\n </svg>',pt='\n <path d="M11,0C4.9,0,0,4.9,0,11s4.9,11,11,11c6.1,0,11-4.9,11-11S17.1,0,11,0z M12.8,17.7c0,0.2-0.2,0.4-0.4,0.4\n H9.7c-0.2,0-0.4-0.2-0.4-0.4V15c0-0.2,0.2-0.4,0.4-0.4h2.7c0.2,0,0.4,0.2,0.4,0.4V17.7z M12.8,7.9c0,0.2,0,0.6-0.1,0.9L11.9,13\n c0,0.2-0.3,0.7-0.5,0.7h-0.7c-0.2,0-0.5-0.4-0.5-0.7L9.3,8.9c0-0.2-0.1-0.8-0.1-1V4.3c0-0.2,0.2-0.4,0.4-0.4h2.7\n c0.2,0,0.4,0.2,0.4,0.4V7.9z"/>',qt='\n <svg class="inbox" xmlns="http://www.w3.org/2000/svg" xml:space="preserve" fill-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="2" clip-rule="evenodd" viewBox="0 0 17 17">\n <path d="M1.8 17q-.8 0-1.3-.5T0 15.2V1.8Q0 1 .5.5T1.8 0h13.4q.8 0 1.3.5t.5 1.3v13.4q0 .8-.5 1.3t-1.3.5zm0-1.5h13.6l.1-.3v-2.9h-3.3q-.7.9-1.6 1.5t-2.1.5q-1 0-2-.5t-1.7-1.5H1.5v2.9zm6.7-2.7a3 3 0 0 0 2.8-2h4.2v-9l-.3-.3H1.8l-.3.3v9h4.2q.4.8 1 1.5.9.5 1.8.5m7 2.7h-14z"/>\n </svg>\n',mt={rightThinArrow:'\n <svg viewBox="0 0 21 11">\n <path d="M16,2.434l3,3l-3,3" style="fill:none;stroke-width:2px;"/>\n <path d="M0,5.434l18.586,-0" style="fill:none;stroke-width:2px;stroke-linejoin:round;stroke-miterlimit:1.5;"/>\n </svg>',rightFatArrow:'\n <svg viewBox="0 0 21 18">\n <path d="M14.324,4.651l4.5,4.5l-4.5,4.5" style="fill:none;stroke-width:3px;"/>\n <path d="M0,9.151l18.673,-0" style="fill:none;stroke-width:3px;stroke-linejoin:round;stroke-miterlimit:1.5;"/>\n </svg>',clock:'\n <svg viewBox="0 0 17 17"">\n <path d="M9.016,7.302l-0,-2.062c-0,-0.348 -0.281,-0.629 -0.629,-0.629c-0.348,-0 -0.63,0.281 -0.63,0.629l0,\n 2.062c-0.189,0.111 -0.345,0.266 -0.455,0.455l-1.433,0c-0.348,0 -0.629,0.282 -0.629,0.63c-0,0.347 0.281,\n 0.629 0.629,0.629l1.433,0c0.219,0.375 0.62,0.629 1.085,0.629c0.694,0 1.258,-0.563 1.258,-1.258c0,-0.465 -0.254,\n -0.867 -0.629,-1.085m4.405,1.085c0,-2.776 -2.258,-5.035 -5.034,-5.035c-2.776,0 -5.035,2.259 -5.035,5.035c-0,\n 2.776 2.259,5.034 5.
1035,5.034c2.776,0 5.034,-2.258 5.034,-5.034m1.888,-0c0,3.817 -3.106,6.922 -6.922,6.922c-3.817,\n 0 -6.923,-3.105 -6.923,-6.922c-0,-3.818 3.106,-6.923 6.923,-6.923c3.816,0 6.922,3.105 6.922,6.923m-1.104,\n 5.742c-0.445,0.451 -0.946,0.846 -1.485,1.184l1.07,1.071c0.123,0.122 0.322,0.122 0.445,-0l0.89,-0.89c0.123,\n -0.124 0.123,-0.323 -0,-0.445l-0.92,-0.92Zm-12.557,0.92c-0.122,0.122 -0.122,0.321 0,0.445l0.89,0.89c0.123,\n 0.122 0.322,0.122 0.445,-0l1.07,-1.071c-0.539,-0.338 -1.04,-0.733 -1.485,-1.184l-0.92,0.92Zm3.021,-13.941l-0.742,\n -0.741c-0.489,-0.489 -1.291,-0.489 -1.78,0l-1.779,1.781c-0.491,0.489 -0.491,1.29 -0,1.779l0.74,0.741c0.785,\n -1.528 2.032,-2.776 3.561,-3.56m11.736,2.819l-0.74,0.741c-0.784,-1.528 -2.032,-2.776 -3.56,-3.56l0.741,\n -0.741c0.489,-0.489 1.291,-0.489 1.78,0l1.779,1.781c0.491,0.489 0.491,1.29 0,1.779"\n style="fill:white;fill-rule:nonzero;" />\n </svg>',tag:'\n <svg viewBox="0 0 11.48 11.48">\n <path d="M11.33,6.24L5.24,0.15C5.14,0.05,5.01,0,4.88,0H0.51C0.23,0,0,0.23,0,0.51v4.36\n c0,0.14,0.05,0.27,0.15,0.36l6.09,6.09c0.2,0.2,0.53,0.2,0.73,0l4.36-4.36C11.53,6.77,11.53,6.44,11.33,6.24z M3.09,4.11\n c-0.57,0-1.03-0.46-1.03-1.03s0.46-1.03,1.03-1.03s1.03,0.46,1.03,1.03S3.65,4.11,3.09,4.11z"/>\n </svg>',messageInTray:qt,messages:'\n <svg viewBox="0 0 23 19">\n <path d="M19.6,0.2l-19,11.6c-0.9,0.5-0.9,0.8,0.1,0.8h6.7v7.1c0,1,0.4,1.2,1,0.4l4.5-5.7l6.7,3.9\n c0.9,0.5,1.8,0.1,1.8-0.9V1.1C21.4,0.1,20.4-0.3,19.6,0.2z M9.4,16.6V13L20.3,1.1L9.4,16.6z"/>\n </svg>',postToRegister:'\n <svg class="postToRegister" viewBox="0 0 22 18">\n <path d="M22,4v10c0,2.2-1.8,4-4,4H8c-2.2,0-4-1.8-4-4v-1h2v2c0,0.5,0.5,1,1,1h12c0.5,0,1-0.5,1-1V3\n c0-0.5-0.5-1-1-1H7C6.5,2,6,2.5,6,3v2H4V4c0-2.2,1.8-4,4-4h10C20.2,0,22,1.8,22,4z M13.6,8.7L8.4,4.3C8.2,4.2,8,4.3,8,4.5V7H0.5\n C0.2,7,0,7.2,0,7.5v3C0,10.8,0.2,11,0.5,11H8v2.5c0,0.3,0.2,0.4,0.4,0.2l5.2-4.4C13.8,9.1,13.8,8.8,13.6,8.7z"/>\n </svg>',clear:'\n <svg viewBox="0 0 10.3 10.3">\n <path d="M10.1,8.3c0.2,0.2,0.2,0.5,0,0.7L9,10.1c-0.2,0.2-0.5,0.2-0.7,0L5.1,7L2,10.1c-0.2,0.2-0.5,0.2-0.7,0L0.2,9\n C0,8.8,0,8.5,0.2,8.3l3.1-3.1L0.2,2c-0.2-0.2-0.2-0.5,0-0.7l1.1-1.1c0.2-0.2,0.5-0.2,0.7,0l3.1,3.1l3.1-3.1C8.5,0,8.8,0,9,0.2\n l1.1,1.1c0.2,0.2,0.2,0.5,0,0.7L7,5.1L10.1,8.3z"/>\n </svg>',addOns:'\n <svg viewBox="0 0 22 22">\n <path d="M11,0C4.93,0,0,4.93,0,11c0,6.07,4.93,11,11,11s11-4.93,11-11C22,4.93,17.07,0,11,0z M11,19.5\n c-4.69,0-8.5-3.81-8.5-8.5c0-4.69,3.81-8.5,8.5-8.5s8.5,3.81,8.5,8.5C19.5,15.69,15.69,19.5,11,19.5z"/>\n <path d="M17,12.13c0,0.21-0.17,0.38-0.38,0.38H12.5v4.12c0,0.21-0.17,0.38-0.38,0.38H9.88c-0.21,0-0.38-0.17-0.38-0.38\n V12.5H5.38C5.17,12.5,5,12.33,5,12.13V9.88C5,9.67,5.17,9.5,5.38,9.5H9.5V5.38C9.5,5.17,9.67,5,9.88,5h2.25\n c0.21,0,0.38,0.17,0.38,0.38V9.5h4.12C16.83,9.5,17,9.67,17,9.88V12.13z"/>\n </svg>',userGuide:'\n <svg viewBox="0 0 16 14">\n <path d="M7.325,11.431l0,-8.398c-0.518,-0.271 -1.054,-0.475 -1.609,-0.61c-0.555,-0.136 -1.13,-0.203\n -1.724,-0.203c-0.456,0 -0.908,0.04 -1.357,0.12c-0.449,0.08 -0.883,0.213 -1.303,0.398l0,8.361c0.432,-0.16\n 0.868,-0.274 1.31,-0.342c0.442,-0.068 0.893,-0.102 1.354,-0.102c0.584,0 1.152,0.074 1.705,0.222c0.553,0.148\n 1.094,0.333 1.625,0.555Zm0.666,1.887c-0.604,-0.395 -1.239,-0.715 -1.905,-0.962c-0.666,-0.247 -1.363,-0.37\n -2.09,-0.37c-0.469,0 -0.937,0.046 -1.406,0.139c-0.469,0.092 -0.919,0.231 -1.35,0.416c-0.296,0.123 -0.576,0.102\n -0.842,-0.065c-0.265,-0.167 -0.398,-0.41 -0.398,-0.73l0,-9.304c0,-0.173 0.046,-0.333 0.139,-0.481c0.092,-0.148\n 0.219,-0.259 0.379,-0.333c0.555,-0.247 1.122,-0.432 1.7,-0.555c0.578,-0.123 1.168,-0.185 1.77,-0.185c0.856,0\n 1.599,0.083 2.227,0.25c0.629,0.166 1.295,0.429 1.998,0.786c0.136,0.074 0.244,0.176 0.324,0.305c0.08,0.129\n 0.12,0.274 0.12,0.435l0,8.768c0.53,-0.247 1.072,-0.438 1.625,-0.573c0.553,-0.136 1.121,-0.203\n 1.705,-0.203c0.456,0 0.909,0.031 1.36,0.092c0.45,0.062 0.885,0.179 1.304,0.351l0,-9.785c0.136,0.049\n 0.272,0.098 0.409,0.146c0.137,0.048 0.272,0.104 0.405,0.168c0.16,0.074\n 0.29,0.185 0.388,0.333c0.099,0.148 0.148,0.308 0.148,0.481l0,9.304c0,0.308 -0.096,0.555 -0.287,0.74
1c-0.191,0.185\n -0.392,0.228 -0.601,0.129c-0.493,-0.222 -1.002,-0.382 -1.526,-0.481c-0.524,-0.099 -1.057,-0.148\n -1.6,-0.148c-0.728,0 -1.424,0.123 -2.09,0.37c-0.666,0.247 -1.301,0.567\n -1.905,0.962Zm2.664,-4.439l0,-7.991l2.22,-0.888l0,7.991l-2.22,0.888Z"/>\n </svg>',systemOk:'\n <svg viewBox="0 0 22 22">\n <path d="M18.8,3.2c-4.3-4.3-11.3-4.3-15.6,0s-4.3,11.3,0,15.6s11.3,4.3,15.6,0C23.1,14.5,23.1,7.5,18.8,3.2z\n M17.3,8.3l-7.6,7.6c-0.1,0.1-0.3,0.1-0.4,0l-4.6-4.6c-0.1-0.1-0.1-0.3,0-0.4L6.6,9C6.7,8.9,6.9,8.9,7,9l2.3,2.3\n c0.1,0.1,0.3,0.1,0.4,0L15,6c0.1-0.1,0.3-0.1,0.4,0l1.9,1.9C17.5,8,17.5,8.2,17.3,8.3z"/>\n </svg>',systemError:'\n <svg viewBox="0 0 22 22">\n '.concat(pt,"\n </svg>"),absrepArrow:'\n <svg viewBox="0 0 23.4 17">\n <path d="M0,0.8c2,4.7,8.7,4.7,11.9,4.6l0-5.2c0-0.3,0.2-0.4,0.4-0.2l11,8.1c0.2,0.2,0.2,0.4,0,0.6l-11,8.1\n c-0.2,0.2-0.4,0.1-0.4-0.2l0-4.6C9.5,11.9,0.1,10.6,0,0.8z"/>\n </svg>',newMsg:'\n <svg viewBox="0 0 22 20">\n <path d="M21.87,2.21l-1.883,-1.883c-0.173,-0.173 -0.456,-0.173\n -0.628,-0l-1.341,1.34l2.511,2.512l1.341,-1.34c0.173,-0.174 0.173,-0.456\n 0,-0.629m-2.597,3.225l-2.511,-2.511l-6.291,6.29l2.511,2.512l6.291,-6.291Zm-11.447,8.445c-0.184,0.455\n 0.036,0.675 0.49,0.491c1.227,-0.495 3.392,-1.372\n 3.41,-1.389c0,-0 -2.511,-2.511 -2.536,-2.486l-1.364,3.384Zm9.044,-3.531l2.663,-2.664l0,8.741c0,1.712\n -1.394,3.107 -3.107,3.107l-13.318,0c-1.714,0 -3.108,-1.395 -3.108,-3.107l-0,-13.318c-0,-1.714\n 1.394,-3.108 3.108,-3.108l13.318,-0c0.231,-0 0.454,0.029\n 0.671,0.077l-2.586,2.587l-11.403,-0c-0.241,-0 -0.444,0.203 -0.444,0.444l-0,13.318c-0,0.24\n 0.203,0.444 0.444,0.444l13.318,-0c0.241,-0 0.444,-0.204 0.444,-0.444l-0,-6.077Z" />\n </svg>',msgStatusTick:ut,msgStatusCross:At,group:'\n <svg viewBox="0 0 31 14.8" class="group">\n <path d="M17.8,10c-0.2-0.3-0.3-0.8,0.2-1.1c1.1-0.7,1.6-2.2,1.6-4.2c0-1.8-1.4-4.7-4.3-4.7S11,2.8,11,4.7\n c0,2,0.6,3.5,1.7,4.2c0.5,0.3,0.3,0.8,0.2,1.1c-0.1,0.2-3.4,0.8-5.1,2.6v2.2h7.5h7.5v-2.2C21.1,10.8,17.9,10.3,17.8,10z"/>\n <path d="M7,12c0-0.8,1.5-1.3,2.4-1.7C8.6,10,7.9,9.8,7.9,9.7C7.8,9.5,7.6,9.1,8,8.9c0.8-0.6,1.2-1.7,1.2-3.2\n c0-1.4-1.1-3.5-3.2-3.5S2.8,4.4,2.8,5.7c0,1.5,0.4,2.6,1.2,3.2c0.3,0.2,0,0.6-0.1,0.8c-0.1,0.2-2,0.6-4,1.9v1.4h6h1V12z"/>\n <path d="M27,9.7c-0.1-0.3-0.3-0.6,0-0.8c0.8-0.6,1.2-1.7,1.2-3.2c0-1.4-1.1-3.5-3.2-3.5s-3.2,2.1-3.2,3.5\n c0,1.5,0.4,2.6,1.2,3.2c0.3,0.2,0.2,0.6,0.1,0.8c0,0.1-0.7,0.3-1.6,0.6c0.9,0.4,1.5,0.9,2.5,1.7v1.1h1h6v-1.4\n C29,10.3,27.1,9.9,27,9.7z"/>\n </svg>',mobile:'\n <svg viewBox="0 0 10 14">\n <path d="M1.2 14q-.5 0-.9-.3-.3-.4-.3-.9V1.2Q0 .6.3.3t.9-.3h6.2q.5 0 .8.3.4.4.4.9v2.3q.3 0 .5.2t.2.6v1.5l-.2.6-.5.2v6.2q0 .5-.4.9-.3.3-.8.3zm0-1.2h6.2V1.2H1.2zm0 0V1.2zm3-.7a.6.6 0 0 0 .7-.6l-.6-.6-.6.6.6.6"/>\n </svg>',edit:'\n <svg viewBox="0 0 26.4 26.4" class="edit">\n <path d="M17.7,2.2L18.5,3l4.9,4.9l0.8,0.8l0.5-0.5l1-1l0.5-0.5c0.3-0.3,0.1-0.9-0.3-1.3l-4.9-4.9c-0.4-0.4-1-0.6-1.3-0.3l-0.5,0.5\n l-1,1L17.7,2.2z"/>\n <rect x="4.8" y="8.5" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -5.3579 13.2411)" width="17" height="9.2"/>\n <path d="M2.4,17.5L0,25.9c-0.1,0.4,0.1,0.6,0.5,0.5L8.9,24L2.4,17.5z"/>\n </svg>',info:'\n <svg viewBox="0 0 22 22">\n <path d="M11,0C4.9,0,0,4.9,0,11s4.9,11,11,11c6.1,0,11-4.9,11-11S17.1,0,11,0z M10.1,5.2c0-0.2,0.2-0.4,0.4-0.4h1.8\n c0.2,0,0.4,0.2,0.4,0.4V7c0,0.2-0.2,0.4-0.4,0.4h-1.8c-0.2,0-0.4-0.2-0.4-0.4V5.2z M14.6,16.8c0,0.2-0.2,0.4-0.4,0.4H8.8\n c-0.2,0-0.4-0.2-0.4-0.4V15c0-0.2,0.2-0.4,0.4-0.4h1.3V11H8.8c-0.2,0-0.4-0.2-0.4-0.4V8.8c0-0.2,0.2-0.4,0.4-0.4h3.6\n c0.2,0,0.4,0.2,0.4,0.4v5.8h1.3c0.2,0,0.4,0.2,0.4,0.4V16.8z"/>\n </svg>',presentMark:'\n <svg class="present mark" viewBox="0 0 48 48">\n <circle class="bg" cx="24" cy="24" r="24"/>\n <circle class="fg" cx="24" cy="24" r="21.5"/>\n <path class="st0" d="M36.4,18.7l-15,15c-0.2,0.2-0.6,0.2-0.8,0l-9.1-9.1c-0.2-0.2-0.2-0.6,0-0.8l3.8-3.8c0.2-0.2,0.6-0.2,0.8,0\n l4.5,4.5c0.2,0.2,0.6,0.2,0.8,0l10.4-10.4c0.2-0.2,0.6-0.2,0.8,0l3.8,3.7C36.7,18.1,36.7,18.5,36.4,18.7z"/>\n </svg>',absentMark:'\n <svg class="absent mark" viewBox="0 0 48 48">\n <circle class="bg" cx="24" cy="24" r="24"/>\n <circle class="fg" cx="24" cy="24" r="21.5"/>\n <path class="st0" d="M30.5,34.1c-0.3,0.3-0.9,0.3-1.2,0l-5-5l-5,5c-0.3,0.3-0.9,0.3-1.2,0l-3.7-3.7c-0.3-0.3-0.3-0.9,0-1.2l5-5l-5-5\n c-0.3-0.3-0.3-0.9,0-1.2l3.7-3.7c0.3-0.3,0.9-0.3,1.2,0l5,5l5-5c0.3-0.3,0.9-0.3,1.2,0l3.7,3.7c0.3,0.3,0.3,0.9,0,1.2l-5,5l5,5\n c0.3,0.3,0.3,0.9,0,1.2L30.5,34.1z"/>\n </svg>',lateMark:'\n <svg class="late mark" viewBox="0 0 48 48">\n <circle class="bg" cx="24" cy="24" r="24"/>\n <circle class="fg" cx="24" cy="24" r="21.5"/>\n <path class="a" d="M8.679,18.141q.255-.682.571-1.34a16.294,16.294,0,1,1,7.634,21.741l-.2-.1,1.723-3.489.159.078a12.395,\n 12.395,0,1,0-7.022-10.588l-3.886.19A16.288,16.288,0,0,1,8.679,18.141Z"/>\n <polygon class="a" points="22.253 33.377 11.915 31.688 15.62 41.486 22.253 33.377"/>\n <path class="a" d="M31.276,17.844a.691.691,0,0,1,0,.976l-4.5,4.5a2.829,2.829,0,0,1,.086.66A2.762,2.762,0,0,1,24.1,\n 26.749a3.08,3.08,0,0,1-2.393-1.394H17.9a.719.719,0,0,1-.689-.722V23.32A.719.719,0,0,1,17.9,22.6H21.71A3.081,\n 3.081,0,0,1,24.1,21.2a2.731,2.731,0,0,1,.779.142l4.463-4.462a.692.692,0,0,1,.974,0Z"/>\n </svg>
1',lunchChoiceTick:'\n <svg class="tick" viewBox="0 0 48 48">\n <path d="M36.4,18.7l-15,15c-0.2,0.2-0.6,0.2-0.8,0l-9.1-9.1c-0.2-0.2-0.2-0.6,0-0.8l3.8-3.8c0.2-0.2,0.6-0.2,0.8,0\n l4.5,4.5c0.2,0.2,0.6,0.2,0.8,0l10.4-10.4c0.2-0.2,0.6-0.2,0.8,0l3.8,3.7C36.7,18.1,36.7,18.5,36.4,18.7z"/>\n </svg>',lunchChoiceWarning:'\n <svg viewBox="-2 -2 24 24">\n <circle cx="11" cy="11" r="13"/>\n '.concat(pt,"\n </svg>"),enterFullScreen:'\n <svg viewBox="0 0 19 19">\n <path d="M0 18.7v-5.3h2v3.3h3.3v2zm13.3 0v-2h3.3v-3.3h2v5.3zM0 5.3V0h5.3v2H2v3.3zm16.6 0V2h-3.3V0h5.3v5.3z"/>\n </svg>',leaveFullScreen:'\n <svg viewBox="0 0 19 19">\n <path d="M1.2 18.6 0 17.3 6.3 11h-4V9.3h7v7H7.5v-4zm8-9.3v-7H11v4L17.3 0l1.3\n 1.2-6.3 6.3h4v1.8z"/>\n </svg>',schoolLunch:'\n <svg viewBox="0 0 20.9 31.4">\n <path d="M20.9,1.2v28.9c0,0.7-0.6,1.3-1.3,1.3h-1.3c0,0-1.3-0.6-1.7-1.3V19.7c0.4,0-3.5-3.9-3.5-3.9V6.4\n c0-1.1,0.7-2.4,1.6-3l4.6-3C20.1-0.3,20.9,0.1,20.9,1.2z M8.6,0.4c-0.1-0.1-0.2-0.1-0.2,0L7.9,1.2C7.9,1.3,7.8,1.5,7.8,1.7v6.2H7\n V1.7C6.5,1.5,6.5,1.3,6.4,1.2L6,0.4c-0.1-0.1-0.2-0.1-0.2,0L5.3,1.2C5.3,1.3,5.2,1.5,5.2,1.7v6.2H4.3V1.7C3.9,1.5,3.9,1.3,3.8,1.2\n L3.4,0.4c-0.1-0.1-0.2-0.1-0.2,0L2.7,1.2C2.7,1.3,2.6,1.5,2.6,1.7v6.2H1.7V1.7C1.3,1.5,1.3,1.3,1.2,1.2L0.8,0.4\n c-0.1-0.1-0.2-0.1-0.2,0L0.1,1.2C0.1,1.3,0,1.5,0,1.7v6.9v1.3c0,0.4,0.1,0.9,0.3,1.2l2.3,4.6v14.3c0,0.7,0.6,1.3,1.3,1.3h1.7\n c0.7,0,1.3-0.6,1.3-1.3V15.7l2.3-4.6c0.2-0.3,0.3-0.9,0.3-1.2V8.6V1.7C9.1,1.5,9.1,1.3,9,1.2L8.6,0.4z"/>\n </svg>',packedLunch:'\n <svg viewBox="0 0 40 36.7">\n\t <path d="M15,5h-3.3c0-2.8,2.2-5,5-5h6.7c2.8,0,5,2.2,5,5H25c0-0.9-0.7-1.7-1.7-1.7h-6.7C15.7,3.3,15,4.1,15,5z M35,6.7\n\t\t H5c-2.8,0-5,2.2-5,5v20c0,2.8,2.2,5,5,5h30c2.8,0,5-2.2,5-5v-20C40,8.9,37.8,6.7,35,6.7z"/>\n </svg>',homeLunch:'\n <svg viewBox="0 0 38.5 36.3">\n\t <polygon points="29.9,10.7 29.9,0.6 24.2,0.6 24.2,5 19.2,0.1 19.2,0 0,19.1 5.7,19.1 5.7,36.3 15.6,36.3 15.6,24.8\n\t\t 22.8,24.8 22.8,36.3 32.8,36.3 32.8,19.1 38.5,19.1"/>\n </svg>',radioButton:'\n <svg height="18" width="18" viewBox="0 0 18 18" class="radio">\n <circle fill="none" stroke="#333" stroke-width="2" stroke-miterlimit="10" cx="9" cy="9" r="8" />\n <circle class="inner" stroke="#333" fill="#fff" stroke-miterlimit="10" cx="9" cy="9" r="4.5" />\n </svg>',blankTemplateDocument:'\n <svg viewBox="0 0 16 22">\n <path d="M8,17.778C8.196,17.778 8.393,17.843 8.556,17.972L10.222,19.307L11.889,17.972C12.192,17.73 12.615,\n 17.713 12.938,17.927L14.222,18.784L14.222,1.778L1.778,1.778L1.778,18.784L3.062,17.927C3.385,17.713 3.808,\n 17.73 4.111,17.972L5.778,19.307L7.444,17.972C7.607,17.843 7.804,17.778 8,17.778M15.111,21.333C14.939,\n 21.333 14.766,21.283 14.618,21.184L12.492,19.766L10.778,21.139C10.453,21.397 9.991,21.397 9.667,21.139L8,\n 19.804L6.333,21.139C6.009,21.397 5.547,21.397 5.222,21.139L3.508,19.766L1.382,21.184C1.109,21.365 0.758,\n 21.383 0.469,21.228C0.18,21.074 0,20.772 0,20.444L0,1.778C0,0.797 0.797,0 1.778,0L14.222,0C15.203,0 16,\n 0.797 16,1.778L16,20.444C16,20.772 15.82,21.074 15.531,21.228C15.399,21.299 15.255,21.333 15.111,21.333"/>\n </svg>',templateDocument:'\n <svg viewBox="0 0 16 22">\n <path d="M8,17.778C8.196,17.778 8.393,17.843 8.556,17.972L10.222,19.307L11.889,17.972C12.192,17.73 12.615,\n 17.713 12.938,17.927L14.222,18.784L14.222,1.778L1.778,1.778L1.778,18.784L3.062,17.927C3.385,17.713 3.808,\n 17.73 4.111,17.972L5.778,19.307L7.444,17.972C7.607,17.843 7.804,17.778 8,17.778M15.111,21.333C14.939,\n 21.333 14.766,21.283 14.618,21.184L12.492,19.766L10.778,21.139C10.453,21.397 9.991,21.397 9.667,21.139L8,\n 19.804L6.333,21.139C6.009,21.397 5.547,21.397 5.222,21.139L3.508,19.766L1.382,21.184C1.109,21.365 0.758,\n 21.383 0.469,21.228C0.18,21.074 0,20.772 0,20.444L0,1.778C0,0.797 0.797,0 1.778,0L14.222,0C15.203,0 16,\n 0.797 16,1.778L16,20.444C16,20.772 15.82,21.074 15.531,21.228C15.399,21.299 15.255,21.333 15.111,21.333M12.444,\n 11.111C12.444,10.866 12.245,10.667 12,10.66
17L4,10.667C3.755,10.667 3.556,10.866 3.556,11.111L3.556,12C3.556,\n 12.245 3.755,12.444 4,12.444L12,12.444C12.245,12.444 12.444,12.245 12.444,12L12.444,11.111ZM4,8.889L12,\n 8.889C12.245,8.889 12.444,8.69 12.444,8.444L12.444,7.556C12.444,7.31 12.245,7.111 12,7.111L4,7.111C3.755,\n 7.111 3.556,7.31 3.556,7.556L3.556,8.444C3.556,8.69 3.755,8.889 4,8.889M6.667,14.222L4,14.222C3.755,\n 14.222 3.556,14.421 3.556,14.667L3.556,15.556C3.556,15.801 3.755,16 4,16L6.667,16C6.912,16 7.111,15.801 7.111,\n 15.556L7.111,14.667C7.111,14.421 6.912,14.222 6.667,14.222M3.556,4.889L3.556,4C3.556,3.755 3.755,3.556 4,\n 3.556L12,3.556C12.245,3.556 12.444,3.755 12.444,4L12.444,4.889C12.444,5.134 12.245,5.333 12,5.333L4,\n 5.333C3.755,5.333 3.556,5.134 3.556,4.889"/>\n </svg>',instruction:'\n <svg viewBox="0 0 15 15">\n <path d="M12.713,8.778c0,0.164 -0.138,0.303 -0.302,0.303l-5.22,-0l-2.348,2.348l0,-2.348l-2.724,-0c-0.164,\n -0 -0.303,-0.139 -0.303,-0.303l0,-6.659c0,-0.164 0.139,-0.303 0.303,-0.303l10.292,0c0.164,0 0.302,\n 0.139 0.302,0.303l0,6.659Zm-0.302,-8.778l-10.292,-0c-1.169,-0 -2.119,0.95 -2.119,2.119l-0,6.659c-0,\n 1.169 0.95,2.119 2.119,2.119l0.908,0l-0,2.119c-0,0.537 0.257,0.964 0.686,1.142c0.131,0.054 0.266,0.08 0.402,\n 0.08c0.312,0 0.626,-0.138 0.89,-0.402l2.938,-2.939l4.468,0c1.168,0 2.118,-0.95 2.118,-2.119l0,-6.659c0,\n -1.169 -0.95,-2.119 -2.118,-2.119" style="fill:#333;"/>\n </svg>',tick:ut,cross:At,atSymbol:'\n <svg viewBox="0 0 14 14">\n <path d="M7 14a7 7 0 0 1-5-2A7 7 0 0 1 .6 4.2 7 7 0 0 1 7 0a7 7 0 0 1 5 2 7 7 0 0 1 2 5v1q0 1.1-.7 1.8t-1.7.7q-.6 0-1.1-.3l-1-.8-1.1.8q-.7.3-1.4.3-1.5 0-2.5-1T3.5 7t1-2.5 2.5-1 2.5 1 1 2.5v1q0 .6.3.9t.8.3.8-.3.3-.8V7q0-2.5-1.7-4a6 6 0 0 0-4-1.7Q4.6 1.3 3 3a6 6 0 0 0-1.7 4q0 2.5 1.7 4a6 6 0 0 0 4 1.7h3.5V14zm0-4.8q.9 0 1.5-.7T9.2 7t-.7-1.5T7 4.8t-1.5.7T4.8 7t.7 1.5 1.5.7"/>\n </svg>\n ',remove:'\n <svg viewBox="0 0 14 2">\n <path d="M0 0h14v2H0z"/>\n </svg>\n'};q.A.m.schoolIcons=mt;var ft=mt,ht=(t(42762),t(70204)),Wt=t(1794),gt="HH:mm",vt={lastDay:"[yesterday]",sameDay:"[today]",nextDay:"[tomorrow]",lastWeek:"D MMM",nextWeek:"dddd",sameElse:function(e){return"D MMM"+(this.isSame(e,"year")?"":" YYYY")}},bt=function(e){return e.trim().length?e.length>2048?"tooLong":void 0:"missing"},yt=function(e){var n=e.user;n&&(n.id===s.m.user().id&&(n.profilePicInfo=s.m.user().profilePicInfo(),n.name=s.m.user().fullName()),n.profilePicUrl=(0,ht.t)(n.id,n.profilePicInfo))},wt=function(e,n){var t,o;if(e.school)e.isGroupMember=!0,e.name=e.school.shortName,e.profilePicUrl=s.util.schoolIconUrl(e.school.id),(null===(o=e.user)||void 0===o?void 0:o.id)===O.user().id&&(e.user.name="You"),t={imgSrc:s.util.schoolIconUrl(e.school.id),altText:e.school.shortName};else if(e.user){var i=c.Ay.find(n,function(n){return n.user&&n.user.id===e.user.id});e.user=(null==i?void 0:i.user)||e.user,e.contact=(null==i?void 0:i.contact)||void 0,e.name=e.user.id===O.user().id?"You":e.user.name,e.profilePicUrl=e.user.profilePicUrl;var a=(0,Wt.o)(e.user.id===O.user().id?O.user().fullName():e.user.name)[0];t={imgSrc:e.user.profilePicInfo?e.user.profilePicUrl:void 0,altText:e.name,text:a,background:(0,Wt.X)(e.user.id)}}else e.profilePicUrl=(0,ht.t)(),e.name=e.contact.name,t={text:(0,Wt.o)(e.name)[0],background:"#aaa"};e.avatarData=t},kt=t(85885),xt="HH:mm";p().components.register("message-activity",{viewModel:function(e){var n=e.activity,t=e.showAll,o=e.maxSize||150,i=e.maxLines||2;return c.Ay.each(n.participants,yt),wt(n.sender,n.participants),n.sentText=H().unix(n.sent/1e3).format(xt),n.title=n.subject||(n.sender.school?"Message sent":"Message from ".concat(n.sender.name)),n.text=n.content.text,c.Ay.each(n.content.files,function(e){e.iconHtml=kt.A[e.type||"generic"]}),n.triggerStylingRefresh=e.triggerStylingRefresh,n.icon=ft.messages,{message:n,maxSize:o,maxLines:i,showAll:t}},template:'\n <activity-label>\n <sw-avatar params="icon: message.icon"></sw-avatar>\n </activity-label>\n <activity-content>\n <activity-info>\n <main-info>
1\n <span class="message-title">{{message.title}}</span>\n <sent-time>{{message.sentText}}</sent-time>\n </main-info>\n </activity-info>\n <activity-body>\n <show-more params="initialMaxLength: maxSize, initialMaxLines: maxLines, text: message.text, preserveLineBreaks: true, onToggle: message.triggerStylingRefresh, showAll: showAll"></show-more>\n {{#foreach message.content.files}}\n <file-info>\n <file-icon>{{{iconHtml}}}</file-icon>\n <file-title>{{title}}</file-title>\n </file-info>\n {{/foreach}}\n </activity-body>\n </activity-content>'}),p().components.register("parent-time-activity",{viewModel:function(e){var n,t=e.activity,o=t.parentName,i=t.hostName,a=t.hostUserId,s=H()(t.startTime).format(xt),r=[{imgSrc:t.hostProfilePicInfo?(0,ht.t)(t.hostUserId,t.hostProfilePicInfo,!1):null,background:(0,Wt.X)(a),text:(0,Wt.o)(i)[0],tooltipText:i}],M=null===(n=e.useAvatars)||void 0===n||n,c={imgSrc:t.parentProfilePicInfo?(0,ht.t)(t.parentUserId,t.parentProfilePicInfo,!1):null,background:(0,Wt.X)(t.parentUserId),text:(0,Wt.o)(o)[0],tooltipText:o},l=p().pureComputed(function(){return q.A.m.user().id===a?"you":i});return{data:t,time:s,hostAvatars:r,parentAvatar:c,hostName:i,hostNameOrYou:l,parentName:o,useAvatars:M}},template:'\n <activity-label>\n <sw-avatar class="member" params="data: parentAvatar"></sw-avatar>\n </activity-label>\n <activity-content>\n <div class="info-container">\n {{#if useAvatars}}\n <sw-avatar-stack params="avatars: hostAvatars, avatarClassName: \'member\'"></sw-avatar-stack>\n <div data-bind="tooltip: {position:\'below\'}" class="logActionStaff">Hosted by {{hostNameOrYou}}</div>\n {{/if}}\n <activity-info>\n <secondary-info>\n <start-time>{{time}}</start-time>\n </secondary-info>\n <main-info>Parent Time Session</main-info>\n </activity-info>\n {{#ifnot useAvatars}}\n <div>Host: {{hostName}}</div>\n {{/ifnot}}\n </div>\n <activity-body>\n {{data.parentName}} joined a Parent Time session with {{data.hostName}}\n </activity-body>\n </activity-content>'});var Tt=t(53751);t(5359);p().components.register("register-activity",{viewModel:function(e){var n,t=e.activity,o=null!==(n=e.showAll)&&void 0!==n&&n,i=c.Ay.contains(Tt.A.lateCodes,t.coding[0])?"Late":"Absent",a=t.slotName.toUpperCase()+" Session";return{data:t,forText:i,slotText:a,notesText:t.notes,showAll:o,triggerStylingRefresh:e.triggerStylingRefresh}},template:'\n <activity-label>\n <register-mark params="code: data.coding[0], slotName: data.slotName"></register-mark>\n </activity-label>\n <activity-content>\n <activity-info>\n <main-info>{{slotText}}\x3c!--\n --\x3e, {{forText}}\x3c!--\n --\x3e{{#if data.minutesLate}} by <minutes-late>{{data.minutesLate}} minutes</minutes-late>{{/if}}\n </main-info>\n <secondary-info></secondary-info>\n </activity-info>\n <activity-body>\n {{#if data.notes}}\n <span data-bind="css: {placeholder: !data.notes}">\n {{#if showAll}}\n {{notesText}}\n {{/if}}\n {{#ifnot showAll}}\n <show-more params="initialMaxLength: 120, text: notesText, onToggle: triggerStylingRefresh"></show-more>\n {{/if}}\n </span>\n {{/if}}\n </activity-body>\n </activity-content>'});t(18237);function St(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function Ct(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?St(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):St(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}var Pt={sameDay:"[Today]",nextDay:"[Tomorrow]",nextWeek:"ddd",lastDay:"[Yesterday]",lastWeek:"ddd",sameElse:"ddd"},It={sameDay:"D MMM",nextDay:"D MMM",nextWeek:"D MMM",lastDay:"D MMM",lastWeek:"D MMM",sameElse:function(e,n){return"D MMM"+(this.isSame(n,"year")?"":" YYYY")}};function Ot(e,n){return c.Ay.reduce(e,function(e,n){var t=n.date,o=c.Ay.last(e);if(o&&o.date.isSame(t))o.activities.push(n);else{var i=t.calendar(null,It),a=t.calendar(null,Pt),s="Today"!==a&&"Yesterday"!==a;e.push({date:t,dayLabel:a,showDateLabel:s,dateLabel:i,activities:[n]})}return e},n||[])}function Lt(e){if("message"===e.typeId)return Ct(Ct({},e),{},{date:H().unix(e.sent/1e3).startOf("day"),componentName:"message-activity"});if("registerEntry"===e.typeId)return Ct(Ct({},e),{},{date:H()(e.date,W.F.dateFormatMomentJs),componentName:"register-activity"});if("parentTimeSlot"===e.typeId)return Ct(Ct({},e),{},{date:H()(e.startTime).startOf("day"),componentName:"parent-time-activity"});if("log-entry"===e.typeId){var n;if(e.time){n=H()(e.date).clone();var t=H()(e.time,W.F.timeFormat);n.set({hour:t.get("hour"),minute:t.get("minute"),second:t.get("second")})}else n=void 0;return Ct(Ct({},e),{},{componentName:"log-entry-activity",date:H()(e.date,W.F.dateFormatMomentJs),datetime:n})}throw new TypeError("Unrecognised typeId within: "+JSON.stringify(e))}p().components.register("activity-history",{viewModel:function(e){var n=e.args.pupil,t=e.data.pupilName,o=e.triggerStylingRefresh,i=p().observable(e.data.pageToken),a=p().observable(),s=e.data.showAllActions,r=e.data.restrictedActionsAccess,M=s?"Activity L
1og":"Activity History",l={showPupil:"Show me {pupil:".concat(e.args.pupil,"}"),explainActivities:"What do the activities for a pupil include?",allActions:"Show me all actions involving {pupil:".concat(e.args.pupil,"}")},d=e.data.sisterReportLink||null,u=e.data.printLink,A=O.org,q=O.schoolPath("help/actions/intro#access-restrictions"),m=p().observableArray(Ot(c.Ay.map(e.data.activities,Lt)));return{days:m,lastPageToken:i,more:function(){e.invoke({lastPageToken:i()},a,function(e){i(null==e?void 0:e.pageToken);var n=Ot(c.Ay.map((null==e?void 0:e.activities)||[],Lt),m());m.valueHasMutated(),m(n)})},running:a,actions:l,pupilId:n,pupilName:t,triggerStylingRefresh:o,org:A,reportTitle:M,sisterReportLink:d,printLink:u,restrictedActionsAccess:r,linkToActionsHelp:q}},template:'\n <div class="assist-report">\n <div class="report-title">{{reportTitle}}</div>\n <div class="report-subtitle">for\n <assist-link params="utterance: {text: actions.showPupil}">{{pupilName}}</assist-link>\n </div>\n <div class="report-section">\n {{#foreach days}}\n <div class="day-group">\n {{#if $index() > 0}}\n <div class="divider"></div>\n {{/if}}\n <div class="day-group-title report-section-subtitle">{{dayLabel}}{{#if showDateLabel}}\n <span>{{dateLabel}}</span>\n {{/if}}\n </div>\n {{#foreach activities}}\n <activity-item>\n <div data-bind="\n component: {\n name: componentName,\n params: {\n activity: $data,\n pupilId: $component.pupilId,\n pupilName: $component.pupilName,\n timeAndCategoryFirst: true,\n triggerStylingRefresh: $component.triggerStylingRefresh,\n org: $component.org\n }\n },\n class: componentName"></div>\n </activity-item>\n {{/foreach}}\n </div>\n {{/foreach}}\n <more-link params="hasMore: lastPageToken, running: running, more: more"></more-link>\n </div>\n <div class="report-appendix">\n <action-bar>\n <action-group>\n <assist-link params="utterance: {text: actions.explainActivities}">What Activities Include</assist-link>\n </action-group>\n {{#if sisterReportLink}}\n <action-group>\n <assist-link params="utterance: {text: sisterReportLink.utteranceText}">{{sisterReportLink.label}}</assist-link>\n </action-group>\n {{/if}}\n <action-group>\n <assist-link params="utterance: {text: printLink.utteranceText}">{{printLink.label}}</assist-link>\n </action-group>\n </action-bar>\n {{#if restrictedActionsAccess}}\n <div class="report-footnotes">\n <div>Includes actions assigned to or created by you. To see actions by other staff youâll need the\n Safeguarding role â more <a href="{{linkToActionsHelp}}">here</a>.</div>\n </div>\n {{/if}}\n </div>\n </div>'});t(23418);var Et=t(24371);p().components.register("print-activity-history",{viewModel:function(e){var n="pah-".concat(Date.now()),t=O.user().fullName,o=e.args.pupil,i=e.data.pupilName,a=e.triggerStylingRefresh,s=e.data.showAllActions,r=e.data.restrictedActionsAccess,M="Studybugs ".concat(s?"Activity Log":"Activity History"),l=O.org,d=O.schoolPath("help/actions/intro#access-restrictions"),u=p().observableArray(Ot(c.Ay.map(e.data.activities,Lt))),A="ah-print-".concat(Date.now());var q=H()().format(Et.Bp.LONG_DATE_TIME),m="Downloaded from Studybugs at ".concat(q).concat(t()&&" by ".concat(t())||""," with")+" command âDownload the activity history for ".concat(i,"â"),f=e.data.footnote;return setTimeout(function(){var e,t=document.getElementById(A),o=document.createElement("iframe");if(!t)throw new Error("Couldn't find element ".concat(A));t.querySelectorAll('input[type="checkbox"], input[type="radio"]').forEach(function(e){e.setAttribute("checked","checked")}),o.id=n,o.style.height="0",o.style.width="0",o.style.visibility="hidden",document.body.appendChild(o);var i=o.contentDocument||(null===(e=o.contentWindow)||void 0===e?void 0:e.document),a=Array.from(document.querySelectorAll('link[rel="stylesheet"], link[as="font"], style')).map(function(e){return e.outerHTML}).join("\n");i&&(i.open(),i.write("\n <html>\n <head>\n ".concat(a,'\n <style>body{opacity: 1;}</style>\n </head>\n <body>\n <div class="assist-renderer activity-history">\n ').concat(t.outerHTML,"\n </div>\n </body>\n </html>\n ")),i.close()),setTimeout(function(){o.contentWindow&&(o.contentWindow.focus(),o.contentWindow.print()),document.body.removeChild(o)},500)},1e3),{elemId:A,iframeId:n,days:u,pupilId:o,pupilName:i,triggerStylingRefresh:a,org:l,reportTitle:M,subtitle:m,restrictedActionsAccess:r,linkToActions
1Help:d,footnote:f}},template:'\n <div class="assist-report print-activity-history" id="{{elemId}}">\n <div class="report-title">{{reportTitle}} for {{pupilName}}</div>\n <div class="report-subtitle">{{subtitle}}</div>\n <div class="report-section">\n {{#foreach days}}\n <div class="day-group">\n {{#if $index() > 0}}\n <div class="divider"></div>\n {{/if}}\n {{#foreach activities}}\n {{#ifnot $index() > 0}}\n <div class="activity-container">\n <div class="day-group-title report-section-subtitle">{{$parent.dayLabel}}{{#if $parent.showDateLabel}}\n <span>{{$parent.dateLabel}}</span>{{/if}}\n </div>\n <activity-item>\n <div data-bind="\n component: {\n name: componentName,\n params: {\n activity: $data,\n pupilId: $component.pupilId,\n pupilName: $component.pupilName,\n triggerStylingRefresh: $component.triggerStylingRefresh,\n org: $component.org,\n useAvatars: false,\n timeAndCategoryFirst: true,\n showAll: true,\n }\n },\n class: componentName"></div>\n </activity-item>\n </div>\n {{/ifnot}}\n {{#if $index() > 0}}\n <div class="activity-container">\n <activity-item>\n <div data-bind="\n component: {\n name: componentName,\n params: {\n activity: $data,\n pupilId: $component.pupilId,\n pupilName: $component.pupilName,\n triggerStylingRefresh: $component.triggerStylingRefresh,\n org: $component.org,\n useAvatars: false,\n maxSize: $component.maxSize,\n maxLines: $component.maxSize,\n showAll: true\n }\n },\n class: componentName"></div>\n </activity-item>\n </div>\n {{/if}}\n {{/foreach}}\n </div>\n {{/foreach}}\n </div>\n <div class="report-appendix">\n {{#if restrictedActionsAccess}}\n <div class="report-footnotes">\n <div>Includes actions assigned to or created by you. To see actions by other staff youâll need the\n Safeguarding role â more <a href="{{linkToActionsHelp}}">here</a>.</div>\n </div>\n {{/if}}\n {{#if footnote}}\n <div class="report-footnotes">{{footnote}}</div>\n {{/if}}\n </div>\n </div>'});t(16034);function Nt(e,n,t){(function(e,n){if(n.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,n),n.set(e,t)}function Ft(e,n){return e.get(Dt(e,n))}function Rt(e,n,t){return e.set(Dt(e,n),t),t}function Dt(e,n,t){if("function"==typeof e?e===n:e.has(n))return arguments.length<3?n:t;throw new TypeError("Private element is not present on this object")}var Bt=new WeakMap,jt=new WeakMap,$t=new WeakMap,Ut=new WeakMap,Ht=function(){return(0,j.A)(function e(n){var t=n.prompt,o=n.placeholder,i=n.initialValue,a=n.singleLine;(0,B.A)(this,e),Nt(this,Bt,void 0),Nt(this,jt,void 0),Nt(this,$t,void 0),Nt(this,Ut,void 0),Rt(Bt,this,t),Rt(jt,this,o),Rt($t,this,i),Rt(Ut,this,a)},[{key:"prompt",get:function(){return Ft(Bt,this)}},{key:"placeholder",get:function(){return Ft(jt,this)}},{key:"initialValue",get:function(){return Ft($t,this)}},{key:"singleLine",get:function(){return Ft(Ut,this)}}])}(),Vt=t(87542);p().components.register("parent-alert-enquiry",{viewModel:function(e){var n=e.label||"Add Parent Alertâ¦",t=(0,Vt.oI)(e.groupName,""),o=(0,Vt.oI)(e.templateName,""),i=(0,Vt.oI)(e.excludedParties,""),a=e.customClass,s=e.submitButtonText,r=e.postbox;return{label:n,title:"Add a Parent Alert",preamble:"Provide a few details and weâll set up a new parent alert for you.",fields:[new Ht({prompt:"When should the alert be sent?",placeholder:"Time of day or attendance threshold",initialValue:p().observable(""),singleLine:!0}),new Ht({prompt:"Who should receive this (scheduled alerts) or which pupils should we monitor?",placeholder:"Group name or description",initialValue:t,singleLine:!0}),new Ht({prompt:"Which template would you like to use?",placeholder:"Template name",initialValue:o,singleLine:!0}),new Ht({prompt:"Would you like to exclude any groups/classes/pupils from this alert?",placeholder:"Excluded groups/classes/pupils",initialValue:i,singleLine:!0})],customClass:a,submitButtonText:s,postbox:r}},template:"<school-enquiry-popup params=\"kind: 'request',\n label: label,\n title: title,\n messageFieldsPreamble: preamble,\n multipleMessageFields: fields,\n customClass: customClass,\n submitButtonText: submitButtonText,\n postbox: postbox\"></school-enquiry-popup>"}),p().components.register("staff-alert-enquiry",{viewModel:function(e){var n=e.label||"Add Staff Alertâ¦",t=(0,Vt.oI)(e.recipientsName,""),o=(0,Vt.oI)(e.reportDetails,""),i=e.customClass;return{label:n,title:"Add a Staff Alert",preamble:"Provide some details below and our support team will set up the new alert for you.",fields:[new Ht({prompt:"Who would you like to receive the alert?",placeholder:"Staff recipients",initialValue:t,singleLine:!0}),new Ht({prompt:"What information should the alert contain?",placeholder:"Report details eg summary of attendance",initialValue:o,singleLine:!0}),new Ht({prompt:"When should the alert be received?",placeholder:"Fridays a 3 pm, Daily at 10 am etc",initialValue:p().observable(""),singleLine:!0})],customClass:i}},template:"<school-enquiry-popup params=\"kind: 'request',\n label: label,\n title: title,\n messageFieldsPreamble: preamble,\n multipleMessageFields: fields,\n customClass: customClass\"></school-enquiry-popup>"});var Gt=t(63250);function zt(e,n,t){(function(e,n){if(n.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,n),n.set(e,t)}function Yt(e,n,t){if("function"==typeof e?e===n:e.has(n))return arguments.length<3?n:t;throw new TypeError("Private element is not present on this object")}var _t=new WeakMap,Kt=function(){return(0,j.A)(function e(n){var t=n.templateId;(0,B.A)(this,e),zt(this,_t,void 0),function(e,n,t){e.set(Yt(e,n),t)}(_t,this,t)},[{key:"templateId",get:function(){return function(e,n){return e.get(Yt(e,n))}(_t,this)}}])}(),Jt="suspendedOrResumed",Xt="updated";p().components.register("intervention-item",{viewModel:function(e){var n=p().observable(e.intervention),t=e.alertUpdatePostbox,o=!1!==e.createLinks,i=p().pureComputed(function(){return n().id.value}),a=p().pureComputed(function(){return n().id.serializationType}),s=p().pureComputed(function(){return n().alertType}),r=p().pureComputed(function(){return n().trigger}),l=p().pureComputed(function(){return n().alertTitle}),d=p().pureComputed(function(){return n().recipients||[]}),u=p().pureComputed(function(){return d().length}),A=p().pureComputed(function(){return d().filter(function(e){return"role"===e.serializationType})}),q=p().pureComputed(function(){return A().length}),m=p().pureComputed(function(){return d().filter(function(e){return"role"!==e.serializationType})}),f=p().pureComputed(function(){return n().complaints||[]}),h=p().pureComputed(function(){return f().length}),W=p().observable(n().isSuspended),g=p().pureComputed(function(){return n().suspendAssistLink}),v=p().pureComputed(function(){return n().resumeAssistLink}),b=p().pureComputed(function(){return n().addRecipientAssistLink}),y=p().pureComputed(function(){return"staff"===s().typeName||"staffTemplated"===s().typeName}),w=p().pureComputed(function(){return"staffTemplated"===s().typeName}),k=p().pureComputed(function(){return"parent"===s().typeName}),x=p().pureComputed(function(){return 0===u()}),T=p().pureComputed(function(){return y()&&x()&&!W()&&Boolean(b(
1))}),S=[];return t&&S.push(t.subscribe(function(e){e.alertId.value===i()&&e.alertId.serializationType===a()&&(e.messageType===Jt?W("suspended"===e.state):e.messageType===Xt&&e.alertAsIntervention&&(n(e.alertAsIntervention),W(e.alertAsIntervention.isSuspended)))})),{isKindOfStaffAlert:y,isTemplatedStaffAlert:w,isParentAlert:k,trigger:r,alertType:s,alertTitle:l,editMessageTemplate:function(e){var n=new Kt({templateId:e});M()(document).trigger("messages.load-template",[n])},recipients:d,recipientsCount:u,roleRecipients:A,roleRecipientsCount:q,nonRoleRecipients:m,hasNoRecipients:x,isSuspendedAndActive:T,complaints:f,complaintsCount:h,isSuspended:W,suspendAssistLink:g,resumeAssistLink:v,addRecipientAssistLink:b,createLinks:o,icons:ft,coreIcons:Gt.Ay,dispose:function(){c.Ay.each(S,function(e){return e.dispose()})}}},template:'\n <div data-bind="css: { \'suspended\': isSuspended, \'isSuspendedAndActive\': isSuspendedAndActive}">\n <item-wrapper>\n <trigger-and-action>\n <trigger-phrase-area>\n <div></div>\n <trigger-phrase>\n {{trigger().textPhrase}}\n {{#if trigger().alertTime}}\n {{trigger().alertTime.formattedTime}}\n {{/if}}\n {{#foreach complaints()}}{{#if $index() > 0 && $index() !== ($parent.complaintsCount() - 1)}}, {{/if}}\n {{#if $index() > 0 && $index() === ($parent.complaintsCount() - 1)}} or {{/if}}\n <trigger-complaint>{{name}}</trigger-complaint>{{/foreach}}\n </trigger-phrase>\n </trigger-phrase-area>\n <intervention-arrow>{{{icons.rightThinArrow}}}</intervention-arrow>\n <action-text>\n send\n <alert-title>\n {{#if isParentAlert}}\n {{#if createLinks}}\n <a href="#"\n data-bind="click: () => {editMessageTemplate(alertTitle().templateId); }">{{alertTitle().text}}</a>\n {{/if}}\n {{#ifnot createLinks}}\n {{alertTitle().text}}\n {{/ifnot}}\n {{/if}}\n {{#if isKindOfStaffAlert}}\n â{{alertTitle().text}}â\n {{/if}}\n </alert-title>\n {{#if isTemplatedStaffAlert}}\n for each class\n {{/if}}\n to\n {{#if isParentAlert}}\n <recipient-list>\n {{#if recipientsCount() > 0}}parents of{{/if}}\n {{#if recipientsCount() === 0}}their parents{{/if}}\n {{#foreach recipients()}}\n <alert-recipient>\n {{#if $data.serializationType === \'group\'}}\n <parent-alert-recipient>\n {{#if $parent.createLinks}}\n <assist-link params="assistLink: $data.showGroupAssistLink"></assist-link>\n {{/if}}\n {{#ifnot $parent.createLinks}}\n {{$data.name}}\n {{/ifnot}}\n </parent-alert-recipient>\n {{/if}}\n </alert-recipient>\n {{/foreach}}\n </recipient-list>\n {{/if}}\n {{#if isKindOfStaffAlert}}\n <recipient-list>\n {{#if hasNoRecipients}}\n <span>no one</span>\n {{/if}}\n {{#if roleRecipientsCount() > 0}}\n <alert-recipient>\n <role-recipient>\n <recipient-name>\n staff with the\n {{#foreach roleRecipients()}}\n {{#if $index() > 0 && $index() !== ($parent.roleRecipientsCount() - 1)}}, {{/if}}\n {{#if $index() > 0 && $index() === ($parent.roleRecipientsCount() - 1)}} or {{/if}}\n {{$data.name}}\n {{/foreach}}\n {{#if roleRecipientsCount() === 1}}role{{/if}}\n {{#if roleRecipientsCount() > 1}}roles{{/if}}\n </recipient-name>\n </role-recipient>\n </alert-recipient>\n {{/if}}\n {{#foreach nonRoleRecipients()}}\n <alert-recipient>
1\n {{#if $data.serializationType === \'user\'}}\n <user-recipient data-bind="css: { deactivated: !$data.isActiveStaff }">\n {{#if $parent.createLinks}}\n <span class="remove-user-link-anchor">\n <recipient-name>{{$data.name}}</recipient-name>\n <remove-user-link>\n <assist-link params="assistLink: $data.removeAlertRecipientLink"></assist-link>\n </remove-user-link>\n </span>\n {{/if}}\n {{#ifnot $parent.createLinks}}\n <recipient-name>{{$data.name}}</recipient-name>\n {{/ifnot}}\n </user-recipient>\n {{/if}}\n {{#if $data.serializationType === \'templated\'}}\n <templated-alert-recipient>\n {{$data.name}}\n </templated-alert-recipient>\n {{/if}}\n </alert-recipient>\n {{/foreach}}\n </recipient-list>\n {{/if}}\n <tag-wrapper data-bind="class: alertType().tag.tagType">\n <intervention-tag data-bind="class: alertType().tag.tagType">\n <tag-content>\n {{{icons.tag}}}<tag-name>{{alertType().tag.name}}</tag-name>\n </tag-content>\n </intervention-tag>\n {{#if $data.isSuspended}}\n <alert-suspended>Alert Suspended</alert-suspended>\n {{/if}}\n {{#if createLinks}}\n <alert-action-links>\n {{#ifnot $data.isSuspended}}\n {{#if $data.addRecipientAssistLink()}}\n <add-recipient>\n <assist-link params="assistLink: $data.addRecipientAssistLink()"></assist-link>\n </add-recipient>\n {{/if}}\n <suspend-alert>\n <assist-link params="assistLink: $data.suspendAssistLink()"></assist-link>\n </suspend-alert>\n {{/ifnot}}\n {{#if $data.isSuspended}}\n <resume-alert>\n <assist-link params="assistLink: $data.resumeAssistLink()"></assist-link>\n </resume-alert>\n {{#if $data.addRecipientAssistLink()}}\n <add-recipient>\n <assist-link params="assistLink: $data.addRecipientAssistLink()"></assist-link>\n </add-recipient>\n {{/if}}\n {{/if}}\n </alert-action-links>\n {{/if}}\n </tag-wrapper>\n </action-text>\n </trigger-and-action>\n {{#if isSuspendedAndActive}}\n <warning-area>\n <warning-icon>{{{coreIcons.warningTriangle}}}</warning-icon>\n <warning-text>This alert wonât be sent until you\n <assist-link params="utterance: { text: $data.addRecipientAssistLink().utteranceText },\n caretPosition: $data.addRecipientAssistLink().caretPosition,\n invocable: false">add a recipient</assist-link>.</warning-text>\n </warning-area>\n {{/if}}\n </item-wrapper>\n </div>\n '});var Qt=["apManager"],Zt="alertSuspendedOrResumed",eo="alertUpdated";p().components.register("intervention-page",{viewModel:function(){var e=p().observableArray([]),n=p().observable(!1),t=p().pureComputed(function(){var e=at(),n=e.apManager,t=(0,Zn.A)(e,Qt);return Boolean(n)&&!Object.values(t).some(Boolean)});function o(){var t=O.school();t&&y.getInterventions(t.id,n,function(n){e(n)})}var i=[];i.push(O.school.subscribe(o)),o();var a=p().observable();function s(e,n){var t="resumed"===n.state?"active":"suspended";a({messageType:Jt,alertId:n.alertId,state:t})}function r(e,n){a({messageType:Xt,alertId:n.alertId,alertAsIntervention:n.alertAsIntervention})}return M()(document).on(Zt,s),M()(document).on(eo,r),{interventions:e,fetching:n,alertUpdatePostbox:a,requestChangesEnquiry:"Please change the following alert for me:\n- Copy-paste the existing alert\n- Detail your changes",isApManagerOnly:t,icons:ft,dispose:function(){c.Ay.each(i,function(e){return e.dispose()}),M()(document).off(Zt,s),M()(document).off(eo,r)}}},template:"\n <main-content>\n <div>\n {{#if interventions().length}}\n <p>Here are the automatic alerts the school has configured, for staff and parents.</p>\n {{/if}}\n {{#ifnot interventions().length}}\n <p>You donât currently have any automatic alerts configured.</p>\n {{/ifnot}}\n <interventions-sub-heading>Alerts enable early intervention to improve pupil attendance, health and wellbeing.\n When something happens, something is done â\n <a href=\"#\" data-bind=\"goto: s.m.schoolPath('help/alerts')\">read more</a>.\n </interventions-sub-heading>\n {{#ifnot isApManagerOnly}}\n <intervention-actions>\n <staff-alert-enquiry params=\"customClass: 'interventions'\"></staff-alert-enquiry>\n <parent-alert-enquiry params=\"customClass: 'interventions'\"></parent-alert-enquiry>\n {{#if interventions().length}}\n <school-enquiry-popup params=\"kind: 'request',\n label: 'Request Changesâ¦',\n initialMessage: requestChangesEnquiry,\n customClass: 'interventions'\"></school-enquiry-popup>\n {{/if}}\n </intervention-actions>\n {{/ifnot}}\n {{#ifnot fetching}}\n {{#if interventions().length}}\n <interventions-list>\n <interventions-title>\n <div>\n <div></div>\n <title-trigger>\n <clock-icon>{{{icons.clock}}}</clock-icon>\n <trigger-text><span>or</span> when something happens</trigger-text>\n </title-trigger>\n </div>\n <title-arrow>{{{icons.rightFatArrow}}}</title-arrow>\n <div>\n <title-action>something is done</title-action>\n <div></div>\n </div>\n </interventions-title>\n {{#foreach interventions}}\n <intervention-item params=\"intervention: $data, alertUpdatePostbox: $parent.alertUpdatePostbox\">\n </intervention-item>\n {{/foreach}}\n </interventions-list>\n {{/if}}\n {{/ifnot}}\n </div>\n </main-content>"}),p().components.register("alert-update-result",{viewModel:function(e){var n=e.data,t=n.alertId,o=n.alertAsIntervention,i=n.actionBar,a={alertId:t,alertAsIntervention:o};return M()(document).trigger(eo,a),{actionBar:i}}
1,template:'\n {{#if actionBar}}\n <div class="assist-report">\n <div class="report-appendix">\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n </div>\n </div>\n {{/if}}\n '}),p().components.register("suspend-resume-alert-result",{viewModel:function(e){var n=e.data,t=n.alertId,o=n.state,i=n.actionBar,a={alertId:t,state:o};return M()(document).trigger(Zt,a),{actionBar:i}},template:'\n <div class="assist-report">\n <div class="report-appendix">\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n </div>\n </div>\n '}),p().components.register("explain-reports",{viewModel:function(e){return{listReportsLink:e.data.listReports,requestReportLink:e.data.requestReport}},template:'\n <div class="assist-report">\n <div class="report-title">Custom Reports</div>\n <div class="report-section">\n <user-doc>\n <p>\n Sometimes youâll need a report thatâs not available as standard within\n Studybugs. In these cases the Studybugs data team can build you a custom\n report which you can then download any time via the\n <assist-link params="assistLink: $data.listReportsLink"></assist-link>.\n </p>\n <p>\n Please bear in mind we have limited capacity and have to prioritise across\n many customers, so we might not always be able to give you what you need\n (we provide this service as a bonus, outside of any contractual\n commitments).\n </p>\n <p>\n We do though welcome your requests and will try our best to accommodate\n them!\n </p>\n <p>\n You can request a custom report\n <assist-link params="assistLink: $data.requestReportLink"></assist-link>.\n </p>\n </user-doc>\n </div>\n </div>\n '});var no=t(1285),to=t(89141),oo=t(75580),io=t(7851);function ao(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function so(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?ao(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ao(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}p().components.register("report-history",{viewModel:function(e){var n=e.data.reportName,t=e.data.actionBar,o=p().observableArray(),i=p().observable(e.data.pageToken),a=p().observable(!1);function s(e){if(e){i(e.pageToken);var n=e.history.map(function(e){return so(so({},e),{},{formattedTimestamp:r(e.timestamp),formattedActionType:M(e.actionType)})});p().utils.arrayPushAll(o,n)}}function r(e){var n=H().unix(e);if(n.isBefore(H()().subtract(7,"days")))return n.format(Et.Bp.LONG_DATE);var t=n.fromNow();return t.charAt(0).toUpperCase()+t.slice(1)}function M(e,n){switch(e){case"generated":return"Downloaded fresh";case"downloaded":return"Downloaded";case"requested":return"Created";case"edited":return n||"Edited";default:return e}}return s(e.data),{reportName:n,rows:o,lastPageToken:i,running:a,more:function(){var n;e.invoke({pageToken:"".concat(null!==(n=i())&&void 0!==n?n:0)},a,function(e){s(e)})},formatHistoryTimestamp:r,formatHistoryActionType:M,getEventIcon:function(e){switch(e){case"generated":case"downloaded":return oo;case"requested":return to;case"edited":return no}},spacer:io,actionBar:t}},template:'\n <div class="assist-report">\n <div class="report-title">â<span data-bind="text: reportName"></span>â Report History</div>\n\n <div class="report-section">\n \x3c!-- ko foreach: rows --\x3e\n\n <div class="report-history-item">\n <img class="report-event-icon" data-bind="attr: { src: $parent.getEventIcon($data.actionType) }" />\n <span class="event-type" data-bind="text: $parent.formatHistoryActionType($data.actionType, $data.description)"></span>\n \x3c!-- ko if: $data.userName --\x3e\n <sp
1an class="staff-name" data-bind="text: $data.userName"></span>\n <span class="separator">/</span>\n \x3c!-- /ko --\x3e\n <span class="timestamp" data-bind="text: $parent.formatHistoryTimestamp($data.timestamp)"></span>\n </div>\n \x3c!-- ko if: $index() < $parent.rows().length - 1 --\x3e\n <img class="report-event-icon" data-bind="attr: { src: $parent.spacer }" />\n \x3c!-- /ko --\x3e\n\n \x3c!-- /ko --\x3e\n </div>\n <more-link params="hasMore: lastPageToken, running: running, more: more"></more-link>\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n </div>'});t(89463);var ro=t(22545),Mo=t(40817);p().components.register("report-item",{viewModel:function(e){var n=e.report,t=n.name,o=n.description,i=n.getReportLink,a=n.requestChangeLink,s=n.historyLink,r=n.staff,c=p().observable(!1),l=[{select:function(){var e={text:s.utteranceText};M()(document).trigger("invokeUtterance",[e])},label:"History",iconHtml:ro},{select:function(){var e={text:a.utteranceText};M()(document).trigger("selectUtterance",[e])},label:"Request Changes"}],d=p().pureComputed(function(){var e=null==r?void 0:r.map(function(e){return e.isLoggedInUser?"you":e.name});if(null!=e&&e.length)return"Downloaded by "+(0,_e.em)(e)}),u=p().pureComputed(function(){return null==r?void 0:r.map(function(e){var n=e.name;return{imgSrc:e.profilePicInfo?(0,ht.t)(e.userId,e.profilePicInfo):void 0,altText:n,text:(0,Wt.o)(n)[0],background:(0,Wt.X)(e.userId)}})});return{staff:r,staffAvatars:u,name:t,description:o,getReportLink:i,editMenuOpen:c,customReportIcon:Mo,editMenuItems:l,staffTooltip:d}},template:'\n <div class="divider"></div>\n <div class="report-content">\n <img class="custom-report-icon" data-bind="attr: { src: customReportIcon }" />\n\n <div class="report-text">\n\n <div class="reportMenuAndStaff" data-bind="css: {menuOpen: editMenuOpen}">\n <div class="reportMenuAndStaffContent">\n <sw-menu params="items: editMenuItems, usePopupLayer: true,\n open: editMenuOpen, tooltipPosition: \'below-right\', assistClass: \'reportEditMenu\'">'.concat(Gt.Ay.ellipsis,'</sw-menu>\n {{#if staff?.length}}\n <div class="reportStaff">\n <sw-avatar-stack params="avatars: staffAvatars, avatarClassName: \'member\'"></sw-avatar-stack>\n <div data-bind="tooltip: {position:\'below\'}" class="reportActionStaff">{{staffTooltip}}</div>\n </div>\n {{/if}}\n </div>\n </div>\n <div class="report-item-content">\n <div class="report-heading">\n <report-link>\n <assist-link params="assistLink: $data.getReportLink"></assist-link>\n </report-link>\n </div>\n <div class="report-description"><span>{{description}}</span></div>\n </div>\n </div>\n </div>\n ')}),p().components.register("reports-list",{viewModel:function(e){var n=p().observableArray(),t=e.data,o=t.totalReportsSubtitle,i=t.readMoreLink,a=t.customReportIcon,s=t.historyIcon,r=t.requestReportLink,M=o,c=p().observable(e.data.pageToken),l=p().observable();function d(e){e&&(c(e.pageToken),p().utils.arrayPushAll(n,e.reports))}return d(e.data),{rows:n,readMoreLink:i,customReportIcon:a,historyIcon:s,requestReportLink:r,subtitle1:"Downloadable spreadsheets built by the Studybugs data team on request - ",subtitle2:M,lastPageToken:c,more:function(){var n;e.invoke({pageToken:"".concat(null!==(n=c())&&void 0!==n?n:0)},l,function(e){d(e)})},running:l}},template:'\n <div class="assist-report">\n <div class="report-title">Custom Reports</div>\n <div class="report-subtitle">
1\n <span>{{subtitle1}}</span>\n <assist-link params="assistLink: readMoreLink"></assist-link>\n </div>\n <div class="report-subtitle">\n <span>{{subtitle2}}</span>\n </div>\n {{#if rows().length > 0}}\n <div class="report-section">\n <div class="report-items">\n \x3c!-- ko foreach: rows --\x3e\n <div class="report-row">\n <report-item params="{report: $data, reportIcon: $parent.customReportIcon, historyIcon: $parent.historyIcon}"></report-item>\n </div>\n \x3c!-- /ko --\x3e\n </div>\n <more-link params="hasMore: lastPageToken, running: running, more: more"></more-link>\n <div class="request-report-link">\n <assist-link params="assistLink: requestReportLink"></assist-link>\n </div>\n </div>\n {{/if}}\n </div>'});t(88106);p().components.register("archived-messaging-groups",{viewModel:function(e){var n=e.data;return{data:n,links:n.links,addRowLinks:function(e){c.Ay.each(e.groups,function(e){e.restore="Restore {group:".concat(e.id,"}")})},invoke:e.invoke}},template:'\n <div class="assist-report">\n <div class="report-title">Archived Messaging Groups</div>\n <div class="report-section">\n <archived-groups params="data: data, embedLinks: addRowLinks, invoke: invoke"></archived-groups>\n </div>\n <div class="report-appendix">\n <foot-links params="data: links, withTopMargin: true"></foot-links>\n </div>\n </div>'}),p().components.register("bubble-group-members",{viewModel:function(e){var n=e.data.members,t=e.data.groupName,o="{bubble:".concat(e.args.bubble,"}");return c.Ay.each(n,function(e){var n="{pupil:".concat(e.pupilId,"}");e.actions={remove:"Remove ".concat(n," from ").concat(o)}}),{members:n,actions:{add:"Add to ".concat(o)},groupName:t}},template:'\n <div class="assist-report">\n <div class="report-title">Bubble Members</div>\n <div class="report-subtitle">for {{groupName}}</div>\n {{#ifnot members.length}}\n <div class="report-section">\n <user-doc>\n <p>This bubble has no members.</p>\n </user-doc>\n </div>\n {{/if}}\n {{#if members.length}}\n <div class="report-section">\n <table>\n <thead>\n <tr>\n <th>Name</th>\n <th>Class</th>\n <th>Year</th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n \x3c!-- ko foreach: members --\x3e\n <tr>\n <td class="name">{{name}}</td>\n <td>{{$data.className || "-"}}</td>\n <td>{{$data.yearGroupName || "-"}}</td>\n <td>\n <action-bar>\n <assist-link params="utterance: {text: actions.remove}">Remove</assist-link>\n </action-bar>\n </td>\n </tr>\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n </div>\n {{/if}}\n <div class="report-appendix">\n <action-bar class="add">\n <action-group>\n <assist-link params="utterance: {text: actions.add}, invocable: false, caretPosition: 4">Add</assist-link>\n </action-group>\n </action-bar>\n </div>\n </div>'}),p().components.register("bubble-groups",{viewModel:function(e){var n=e.data;return c.Ay.each(n,function(e){var n="{bubble:".concat(e.groupId,"}");e.actions={showMembers:"Show me whoâs in ".concat(n)}}),{groups:n}},template:'\n <div class="assist-report">\n <div class="report-title">Bubble Groups</div>\n <div class="report-section">\n <table>\n <tbody>\n \x3c!-- ko foreach: groups --\x3e\n <tr>\n <td class="name">{{groupName}}</td>\n <td>\n <action-bar>\n <assist-link params="utterance: {text: actions.showMembers}">Show Members</assist-link>\n </action-bar>\n </td>\n </tr>\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n </div>\n </div>'});t(57611);p().components.register("current-messaging-groups",{viewModel:function(e){var n=e.data;return n.createGroupLink="Create a messaging group called ",{data:n,links:n.links,addRowLinks:function(e){c.Ay.each(e.groups,function(e){var n="{group:".concat(e.id,"}");e.actions={showMembers:"Show me whoâs in ".concat(n),archive:"Archive ".concat(n),rename:"Rename ".concat(n," to ")}})},invoke:e.invoke}},template:'\n <div class="assist-report">\n <div class="report-title">Messaging Groups</div>\n <div class="report-section">\n <current-groups params="data: data, embedLinks: addRowLinks, invoke: invoke"></current-groups>\n </div>\n <div class="report-appendix">\n <foot-links params="data: links, withTopMargin: true"></foot-links>\n </div>\n </div>'});t(59910);p().components.register("messaging-group-members",{viewModel:function(e){var n;e.args.pupil&&(null===(n=e.configureAddToDashboard)||void 0===n||n.call(e,{utterance:{text:"Show me whoâs in {group:".concat(e.args["messaging group"],"}")}}));var t=e.data,o=e.args["messaging group"],i=e.data.groupName;var a=t.links;return{data:t,group:o,links:a,embedLinks:function(e){c.Ay.each(e.members,function(e){var n="{pupil:".concat(e.pupilId,"}");e.remove="Remove ".concat(n," from {group:").concat(o,"}")})},invoke:e.invoke,groupName:i}},template:'\n <div class="assist-report">\n <div class="report-title">Messaging Group Members</div>\n <div class="report-subtitle">for {{groupName}}</div>\n <div class="report-section">\n <group-members params="data: data, embedLinks: embedLinks, invoke: invoke"></group-members>\n </div>\n {{#if data.editable}}\n <div class="report-appendix">\n <foot-links params="data: links, withTopMargin: true"></foot-links>\n </div>\n {{/if}}\n </div>'});t(2892);var co=t(18689),lo=t(66862),uo=t(70548);t(66706),t(90515);
1p().components.register("class-heatmap",{viewModel:function(e){var n=e.data.classHeatmap,t=n.rows,o=n.offset,i="year"===e.data.scope?" for ".concat(e.data.yearName," "):" ",a="Weekly Attendance".concat(i,"by Class"),s=Number(O.school().attendanceTarget),r=new uo.r(s),M=n.cohortString,c=e.data.actionBar;var l=e.data.linksToGroups,d=e.data.linksToParents;return{rows:t,offset:o,heatmapName:"classHeatmap",title:a,target:s,invoke:e.invoke,linksToGroups:l,linksToParents:d,cohortSubtitle:M,actionBar:c,rowParser:function(e){return e.map(function(e){return new lo.f(e.id,e.name,e.yearToDate.required?100*e.yearToDate.attended/e.yearToDate.required:void 0,e.weekToDate.map(function(n){var t=(0,Et.xp)(n.date,Et.Bp.UTTERANCE_DATE_PARAM),o="Show me a breakdown of {breakdownType:BaseAbsences} "+"for {class:".concat(e.id,"} for the week of ").concat(t);return new co.Q(void 0,n,!0,o,r)}),e.link)})}}},template:'\n <div class="assist-report">\n <heatmap-title params="title: title, cohortSubtitle: cohortSubtitle, links: linksToGroups,\n linksToParents: linksToParents"></heatmap-title>\n <div class="report-section">\n <attendance-heatmap params="rows: rows,\n offset: offset,\n heatmapName: heatmapName,\n target: target,\n invoke: invoke,\n rowParser: rowParser">\n </attendance-heatmap>\n </div>\n {{#if actionBar}}\n <div class="report-appendix">\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n </div>\n {{/if}}\n </div>'});var Ao=t(45458);function po(e,n,t){(function(e,n){if(n.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,n),n.set(e,t)}function qo(e,n){return e.get(fo(e,n))}function mo(e,n,t){return e.set(fo(e,n),t),t}function fo(e,n,t){if("function"==typeof e?e===n:e.has(n))return arguments.length<3?n:t;throw new TypeError("Private element is not present on this object")}var ho=new WeakMap,Wo=new WeakMap,go=function(){return(0,j.A)(function e(n,t){(0,B.A)(this,e),po(this,ho,[]),po(this,Wo,void 0),mo(ho,this,(0,Ao.A)(n)),mo(Wo,this,t)},[{key:"items",get:function(){return qo(ho,this)}},{key:"notes",get:function(){return qo(Wo,this)}}])}(),vo=new WeakMap,bo=new WeakMap,yo=new WeakMap,wo=function(){return(0,j.A)(function e(n,t,o,i,a){(0,B.A)(this,e),po(this,vo,void 0),po(this,bo,void 0),po(this,yo,void 0),mo(vo,this,new So(n,t,o)),mo(bo,this,i),mo(yo,this,a)},[{key:"pupil",get:function(){return qo(vo,this)}},{key:"date",get:function(){return qo(bo,this)}},{key:"slotName",get:function(){return qo(yo,this)}}])}(),ko=new WeakMap,xo=new WeakMap,To=new WeakMap,So=function(){return(0,j.A)(function e(n,t,o){(0,B.A)(this,e),po(this,ko,void 0),po(this,xo,void 0),po(this,To,void 0),mo(ko,this,n),mo(xo,this,t),mo(To,this,o)},[{key:"id",get:function(){return qo(ko,this)}},{key:"name",get:function(){return qo(xo,this)}},{key:"className",get:function(){return qo(To,this)}}])}();p().components.register("edit-class",{viewModel:function(e){return window.setTimeout(function(){var n=e.data,t=c.Ay.map(n,function(e){return new wo(e.id,e.name,e.className)});M()(document).trigger("editRegisters",new go(t))},1e3),{}},template:"<span></span>"});var Co=t(78728),Po=t(15511),Io=t(24331),Oo=(t(51657),t(69671),t(50790),t(37304),t(47872),t(88676)),Lo={showSchoolAttendance:new Oo.i({period:new Co.P4(Co.p7,"on","for")}),showSchoolAttendanceHistory:new Oo.i({period:new Co.P4([Co.LN.ThisSchoolYear,Co.LN.ThisTerm],"on","for")}),showSchoolAttendanceBreakdown:new Oo.i({period:new Co.P4([Co.LN.Today].concat((0,Ao.A)(Co.p7)),"on","for")}),showPupilAttendanceBreakdown:new Oo.i({period:new Co.P4(Co.p7,"for","for")}),showRegisterMarksByPupil:new Oo.i({period:new Co.P4([Co.LN.Today].concat((0,Ao.A)(Co.p7)),"on","for")}),showMissingMarksByPupil:new Oo.i({period:new Co.P4([Co.LN.Today].concat((0,Ao.A)(Co.p7)),"on","for")})},Eo=Lo.showSchoolAttendanceBreakdown.parameters.period;p().components.register("group-attendance-breakdown",{viewModel:{createViewModel:function(e){var n=(0,Io.$e)(e),t=(0,E.A)(n,6),o=t[1],i=t[2],a=t[3],s=t[4],r=t[5],M=e.data.groupName,l=e.data.actionBar||null,d=e.data.classYearGroups;if(void 0!==e.args["for pupils"]){var u=e.data.onClickLinks||[];return{attendance:a,period:o,title:s,numberOfSessionsWhereSchoolOpen:r,actionBar:l,toOnClickUtterance:function(e){var n={};return u.forEach(function(e){n[e.code]=e.link.utteranceText}),n[e]},breakdownType:i,toOtherPeriods:[],toOtherBreakdowns:[],toOtherScopes:[],groupName:M}}var A=e.args["year group"]||e.args.class,p=void 0!==e.args["year group"]?"year group":void 0!==e.args.class?"class":null,q=p&&A?"for {".concat(p,":").concat(A,"}"):"for all pupils",m=c.Ay.without(Eo.supportedTypes,o.type).map(function(e){var n=new Co.Ax(e);return{displayText:(0,Po.z)(n),utteranceText:"Show me a breakdown of {breakdownType:".concat(i,"} ")+"".concat(q," ").concat(Eo.toUtteranceText(n))}}),f=No(q,o).filter(function(e){return e.type!==i}),h=(e.data.onClickLinks||[]).reduce(function(e,n){return e[n.code]=n.link.utteranceText,e},{});var W=d&&"class"===p?d.map(function(e){return{utteranceText:"Show me a breakdown of {breakdownType:".concat(i,"} ")+"for {yearGroup:".concat(e.id,"} ").concat(Eo.toUtteranceText(o)),displayText:e.name}}):[],g=Lo.showSchoolAttendanceBreakdown.parameters.period,v=[{utteranceText:"Show me a breakdown of {breakdownType:".concat(i,"} ").concat(g.toUtteranceText(o)),displayText:"Whole School"}],b=[].concat((0,Ao.A)(W),v);return{attendance:a,period:o,title:s,numberOfSessionsWhereSchoolOpen:r,actionBar:l,toOtherPeriods:m,toOtherBreakdowns:f,breakdownType:i,toOtherScopes:b,groupName:M,toOnClickUtterance:function(e){if("cohort"===p&&h[e])return h[e];var n=(e?Lo.showRegisterMarksByPupil:Lo.showMissingMarksByPupil).parameters.period;return"Show me a tally by pupil of "+(e?"{code:".concat(e,"}"):"missing register")+" marks ".concat(q," ").concat(n.toUtteranceText(o))}}}},template:'\n <div class="assist-report assist-report-chart">\n <div class="report-chart">\n <attendance-breakdown-pie params="attendance: attendance,\n period: period,\n toOnClickUtterance: toOnClickUtterance,\n breakdownType: breakdownType,\n numberOfSessionsWhereSchoolOpen: numberOfSessionsWhereSchoolOpen">\n </attendance-breakdown-pie>\n </div>\n <div class="report-title">{{title}}</div>\n <div class="report-subtitle">\n <attendance-breakdown-type-subtitle params="breakdownType: breakdownType">\n </attendance-breakdown-type-subtitle> For {{groupName}}\n </div>\n <div class="report-appendix">\n {{#if actionBar}}
1\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n {{/if}}\n {{#if !actionBar}}\n <attendance-breakdown-links params="period: period,\n breakdownType: breakdownType,\n toOtherPeriods: toOtherPeriods,\n toOtherBreakdowns: toOtherBreakdowns,\n toOtherScopes: toOtherScopes">\n </attendance-breakdown-links>\n {{/if}}\n </div>\n </div>'});var No=function(e,n){var t="Show me a breakdown of",o="".concat(e," ").concat(Eo.toUtteranceText(n));return[{type:"BaseAbsences",displayText:"Absences",utterance:"".concat(t," {breakdownType:BaseAbsences} ").concat(o)},{type:"AllCodes",displayText:"All Codes",utterance:"".concat(t," {breakdownType:AllCodes} ").concat(o)},{type:"Away",displayText:"Away From School Codes",utterance:"".concat(t," {breakdownType:Away} ").concat(o)}]};p().components.register("open-user-guide",{viewModel:function(){setTimeout(function(){var e=O.schoolPath("help");M()(document).trigger("goto",[e])},500)},template:"<div></div>"});t(26910);p().components.register("print-fire-reg",{viewModel:function(e){var n="pfr-".concat(Date.now()),t=new Intl.Collator("en",{numeric:!0}),o=e.data;c.Ay.each(o.classData,function(e){var n=c.Ay.chain(e.pupilRows).map(function(e){return e.yearName}).uniq().value();n.sort(t.compare);var o=n.join()||"z";e.sortString=o+e.className});var i=o.classData.sort(function(e,n){return t.compare(e.sortString,n.sortString)}),a=H()(),s=a.format("HH:mm [on] ddd D MMMM YY"),r=a.format("ddd D MMMM YY"),M="";c.Ay.each(i,function(e){var n="";c.Ay.each(e.pupilRows,function(e){var t="";c.Ay.each(e.codes,function(e){var n=Tt.A.codes[e.code];e.mark=n.mark(e.slot),t+='<td class="fireWarden code">'.concat(e.mark,"</td>")}),n+='<tr>\n <td class="name">'.concat(e.name,'</td>\n <td class="tick"></td>\n <td class="tick"></td>\n <td class="spacer"></td>\n ').concat(t,'\n <td class="fireWarden"></td>\n </tr>')});var t=e.counts.unknown>0?"<counted>Unknown <strong>".concat(e.counts.unknown,"</strong></counted>"):"";M+="<h1>Fire Register for <strong>".concat(e.className,'</strong></h1>\n <p class="steps"><strong>Follow steps 1 - 2 - 3 to complete.</strong></p>\n <table>\n <thead>\n <tr>\n <th class="spacer"></th>\n <th class="spacer"></th>\n <th class="spacer"></th>\n <th class="spacer"></th>\n <th colspan="3" class="fireWarden">3. Fire Warden</th>\n </tr>\n <tr>\n <th class="spacer"></th>\n <th colspan="2" class="tick">1. Tick all</th>\n <th class="spacer"></th>\n <th colspan="3" class="fireWarden">\n <p>Check <strong>all</strong> absences with AM/PM marks<br/>and sign-in/out book and tick below.</p>\n </th>\n </tr>\n <tr>\n <th class="name">Pupil</th>\n <th class="tick">In</th>\n <th class="tick">Out</th>\n <th class="spacer"></th>\n <th class="fireWarden">AM</th>\n <th class="fireWarden">PM</th>\n <th class="fireWarden">Accounted for?</th>\n </tr>\n </thead>\n <tbody>\n ').concat(n,'\n <tr class="footer">\n <td class="spacer"></td>\n <td colspan="2" class="spacer tick">2. Pass to fire warden</td>\n <td class="spacer"></td>\n <td class="spacer"></td>\n <td class="spacer"></td>\n <td class="spacer"></td>\n </tr>\n </tbody>\n </table>\n <p class="totals">\n Totals based on the ').concat(o.currentSlot.toUpperCase()," registers:\n <counted>In school <strong>").concat(e.counts.in,"</strong></counted>\n ").concat(t,"\n <counted>Absent <strong>").concat(e.counts.out,'</strong></counted>\n </p>\n <p class="notice"><strong>Report generated at ').concat(s,'</strong> via Studybugs Assistant.</p>\n <p class="disclaimer">Studybugs does not warrant that this information is correct and it is the schoolâs\n responsibility to ensure all pupils are accounted for.</p>\n ')});var l='<!doctype html>\n<html>\n<head>\n <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />\n <title>Studybugs - Fire Registers - '.concat(r,'</title>\n <link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@200;400;700&display=swap"\n rel="stylesheet" />\n <style>').concat('* {\n font-family: "Source Sans Pro", "helvetica neue", sans-serif;\n }\n\n h1 {\n font-weight: 200;\n margin: 0;\n }\n\n h1:not(:first-of-type) {\n page-break-before: always;\n }\n\n p {\n margin: 0;\n padding: 0;\n }\n\n td,\n p {\n font-weight: 400;\n font-size: 15.5px;\n }\n\n /* Table Styles */\n\n table {\n border-collapse: collapse;\n }\n\n thead tr,\n table tbody tr:nth-child(even) {\n background-color: #f2f2f2;\n color-adjust: exact;\n -webkit-print-color-adjust: exact;\n }\n\n th,\n td {\n padding: 2px 7px;\n }\n\n th.name,\n td.name {\n border: 1px solid #666;\n }\n\n th.spacer,\n td.spacer {\n border: none;\n background: white;\n }\n\n th,\n tr.footer td.tick {\n font-size: 0.9em;\n text-align: center;\n font-weight: 700;\n }\n\n th.fireWarden p {\n width: 210px;\n font-size: 0.9em;\n }\n\n th:last-of-type {\n width: 120px;\n }\n\n th.name,\n td.name {\n text-align: left;\n padding-right: 16px;\n width: 200px;\n }\n\n td.code {\n text-align: center;\n width: 40px;\n font-family: \'Courier New\', Courier, monospace;\n padding: 0;\n }\n\n td.tick {\n width: 32px;\n }\n\n th.tick,\n td.tick {\n border: 2px solid black;\n }\n\n th.tick,\n tr.footer td.tick {\n background: black;\n color: white;\n color-adjust: exact;\n -webkit-print-color-adjust: exact;\n }\n\n th.fireWarden,\n td.fireWarden {\n border: 1px dashed #ccc;\n }\n\n tr:first-child th.fireWarden {\n border-bottom: none;\n }\n\n tr:nth-child(2) th.fireWarden {\n border-top: none;\n }\n\n /* Footer styles */\n\n counted {\n padding: 0 5px;\n margin-left: 5px;\n border: 1px solid #666;\n }\n\n p.totals {\n margin: 22px 0;\n }\n\n p.notice {\n margin-bottom: 3px;\n font-size: 0.82em;\n }\n\n p.disclaimer {\n font-size: 0.76em;\n }',"</style>\n</head>\n<body>\n ").concat(M,"\n</body>\n</html>");return setTimeout(function(){window.frames[n].contentWindow.print()},1e3),{iframeId:n,iframeHtml:l}},template:'<iframe id="{{iframeId}}" srcdoc="{{iframeHtml}}"></iframe>'});var Fo=Lo.showPupilAttendanceBreakdown.parameters.period;
1p().components.register("pupil-attendance-breakdown",{viewModel:{createViewModel:function(e){var n=(0,Io.$e)(e),t=(0,E.A)(n,6),o=t[1],i=t[2],a=t[3],s=t[4],r=t[5],M=e.args.pupil,l=e.data.yearGroupId,d=e.data.classId,u=c.Ay.without(Fo.supportedTypes,o.type).map(function(e){var n=new Co.Ax(e);return{displayText:(0,Po.z)(n),utteranceText:"Show me a breakdown of {breakdownType:".concat(i,"} ")+"for {pupil:".concat(M,"} ").concat(Fo.toUtteranceText(n))}}),A=Ro(M,o).filter(function(e){return e.type!==i});var p=e.data.pupilName||"",q="Show me {pupil:".concat(M,"}"),m=Lo.showSchoolAttendanceBreakdown.parameters.period,f=[{utteranceText:"Show me a breakdown of {breakdownType:".concat(i,"} ").concat(m.toUtteranceText(o)),displayText:"Whole School"}],h=Lo.showSchoolAttendanceBreakdown.parameters.period,W={utteranceText:"Show me a breakdown of {breakdownType:".concat(i,"} ")+"for {yearGroup:".concat(l,"} ").concat(h.toUtteranceText(o)),displayText:"Year"},g=l?[W].concat(f):f,v={utteranceText:"Show me a breakdown of {breakdownType:".concat(i,"} ")+"for {class:".concat(d,"} ").concat(h.toUtteranceText(o)),displayText:"Class"},b=d?[v].concat((0,Ao.A)(g)):g;return{attendance:a,period:o,title:s,numberOfSessionsWhereSchoolOpen:r,toOtherPeriods:u,toOtherBreakdowns:A,breakdownType:i,pupilName:p,pupilSummaryLink:q,toOtherScopes:b,toOnClickUtterance:function(e){var n=Lo.showRegisterMarksByPupil.parameters.period;return"Show me "+(e?"our {code:".concat(e,"} marks for {pupil:").concat(M,"} ").concat(n.toUtteranceText(o)):"the missing register marks for {pupil:".concat(M,"}"))}}}},template:'\n <div class="assist-report assist-report-chart">\n <div class="report-chart">\n <attendance-breakdown-pie params="attendance: attendance,\n period: period,\n toOnClickUtterance: toOnClickUtterance,\n breakdownType: breakdownType,\n numberOfSessionsWhereSchoolOpen: numberOfSessionsWhereSchoolOpen">\n </attendance-breakdown-pie>\n </div>\n <div class="report-title">{{title}}</div>\n <div class="report-subtitle">\n <attendance-breakdown-type-subtitle params="breakdownType: breakdownType, prefix: \'\'">\n </attendance-breakdown-type-subtitle>\n <span>\n for <assist-link params="utterance: {text: pupilSummaryLink}">{{pupilName}}</assist-link>\n </span>\n </div>\n <div class="report-appendix">\n <attendance-breakdown-links params="period: period,\n breakdownType: breakdownType,\n toOtherPeriods: toOtherPeriods,\n toOtherBreakdowns: toOtherBreakdowns,\n toOtherScopes: toOtherScopes">\n </attendance-breakdown-links>\n </div>\n </div>'});var Ro=function(e,n){var t="Show me a breakdown of",o="for {pupil:".concat(e,"} ").concat(Fo.toUtteranceText(n));return[{type:"BaseAbsences",displayText:"Absences",utterance:"".concat(t," {breakdownType:BaseAbsences} ").concat(o)},{type:"AllCodes",displayText:"All Codes",utterance:"".concat(t," {breakdownType:AllCodes} ").concat(o)},{type:"Away",displayText:"Away From School Codes",utterance:"".concat(t," {breakdownType:Away} ").concat(o)}]};p().components.register("pupil-heatmap",{viewModel:function(e){var n=e.data,t=e.invoke,o=e.triggerStylingRefresh,i=n.pupilGrid,a=n.logActions,s=i.rows,r=i.offset,M=i.cohortSubtitle,c=i.groupName,l="All Pupils"===c?"Weekly Attendance ".concat(M):"Weekly Attendance for ".concat(c),d=Number(O.school().attendanceTarget),u=new uo.r(d);var A="All Pupils"!==i.groupName?M:void 0,p=e.data.actionBar;return{rows:s,offset:r,heatmapName:"pupilGrid",title:l,target:d,linksToGroups:e.data.linksToGroups,cohortSubtitle:A,actionBar:p,logActions:a,rowParser:function(e,n){return e.map(function(e){var t,o=null==n||null===(t=n[e.id])||void 0===t?void 0:t[0];return new lo.f(e.id,e.name,e.yearToDate.required?100*e.yearToDate.attended/e.yearToDate.required:void 0,e.weekToDate.map(function(n){var t=(0,Et.xp)(n.date,Et.Bp.UTTERANCE_DATE_PARAM),o="Show me a breakdown of {breakdownType:BaseAbsences} "+"for {pupil:".concat(e.id,"} for the week of ").concat(t);return new co.Q(void 0,n,!0,o,u)}),e.link,o)})},invoke:t,triggerStylingRefresh:o}},template:'\n <div class="assist-report">\n <heatmap-title params="title: title,\n cohortSubtitle: cohortSubtitle,\n links: linksToGroups">\n </heatmap-title>\n <div class="report-section">\n <attendance-heatmap params="rows: rows,\n offset: offset,\n heatmapName: heatmapName,\n target: target,\n invoke: invoke,\n rowParser: rowParser,\n logActions: logActions,\n triggerStylingRefresh: triggerStylingRefresh">\n </attendance-heatmap>\n </div>\n {{#if actionBar}}\n <div class="report-appendix">
1\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n </div>\n {{/if}}\n </div>'});t(77036);p().components.register("register-marks",{viewModel:function(e){var n=p().observableArray(),t=p().observable(),o=p().observable(),i=e.args.code,a=function(e){return e&&e.marks&&"number"==typeof e.marks.offset&&Array.isArray(e.marks.marks)},s=a(e.data)?e.data.marks:e.data,r=(s.reportTitle||"").toTitleCase(),l=e.triggerStylingRefresh,d=e.args.pupil,u=(s.pupilName||"").toTitleCase(),A="Show me {pupil:".concat(d,"}"),q=void 0!==e.data.logActions,f=a(e.data)&&e.data.logActions?e.data.logActions:{};function h(e){var o=a(e)?e.marks:e,s=a(e)&&e.logActions?e.logActions:{};t(o.offset),c.Ay.each(o.marks,function(e){var n=new m.y(e.date);e.dateText=n.format("ddd D MMM YYYY"),e.renderedClassName=e.pupil.className?", "+e.pupil.className:"",e.codeToDisplay=i,e.notesText=e.notes||"No notes",e.poster=e.postedBy?"by "+e.postedBy:"via "+ge(),e.postedTo=H()(e.postedTo),e.minutesLate=void 0!==e.minutesLate?"".concat(e.minutesLate," minute").concat(e.minutesLate>1?"s":""):"",e.edit=function(t,o){var i=new go([new wo(e.pupil.id,e.pupil.name,e.pupil.className,n,e.session)]);M()(document).trigger("editRegisters",i),o.stopPropagation()},e.pupilAction="Show me {pupil:".concat(e.pupil.id,"}");var t=String(e.pupil.id),o=s[t]||f[t]||[];e.headAction=o[0]}),n(n().concat(o.marks))}return h(e.data),{registerMarks:n,nextOffset:t,running:o,more:function(){e.invoke({nextOffset:t()},o,h)},codeToDisplay:i,reportTitle:r,pupilId:d,pupilName:u,pupilUtteranceText:A,triggerStylingRefresh:l,showActions:q}},template:'\n <div class="assist-report">\n <div class="report-title">{{reportTitle}}</div>\n {{#if pupilId && pupilName}}\n <div class="report-subtitle">for\n <assist-link params="utterance: {text: pupilUtteranceText}">{{pupilName}}</assist-link>\n </div>\n {{/if}}\n <div class="report-section">\n <table>\n <thead>\n <tr>\n \x3c!-- ko if: codeToDisplay !== undefined --\x3e\n <th>Mark</th>\n \x3c!-- /ko --\x3e\n \x3c!-- ko if: codeToDisplay === 20 || codeToDisplay === 120 --\x3e\n <th>Late By</th>\n \x3c!-- /ko --\x3e\n <th>Session</th>\n <th>Pupil</th>\n \x3c!-- ko if: codeToDisplay !== undefined --\x3e\n <th>Notes</th>\n <th>Posted</th>\n <th></th>\n \x3c!-- /ko --\x3e\n <th></th>\n </tr>\n </thead>\n <tbody>\n \x3c!-- ko foreach: registerMarks --\x3e\n <tr>\n \x3c!-- ko if: codeToDisplay !== undefined --\x3e\n <td><register-mark params="code: codeToDisplay, slotName: session, ttDisable: true"></register-mark></td>\n \x3c!-- /ko --\x3e\n \x3c!-- ko if: codeToDisplay === 20 || codeToDisplay === 120 --\x3e\n <td class="minutesLate">{{minutesLate}}</td>\n \x3c!-- /ko --\x3e\n <td>{{dateText}} <span class="session">{{session}}</span></td>\n <td>\n <assist-link params="utterance: {text: pupilAction}">{{pupil.name}}{{renderedClassName}}</assist-link>\n </td>\n \x3c!-- ko if: codeToDisplay !== undefined --\x3e\n <td>\n <span data-bind="css: {placeholder: !$data.notes}">\n <show-more params="initialMaxLength: 80, text: notesText, onToggle: $component.triggerStylingRefresh"></show-more>\n </span>\n </td>\n <td>\n <span class="poster">{{poster}}</span><br>\n <span class="postedDate">{{postedTo.format(\'ddd D MMM YYYY HH:mm\')}}</span>\n </td>\n \x3c!-- /ko --\x3e\n <td><a data-bind="click: edit">Edit</a></td>\n </tr>\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n <more-link params="hasMore: nextOffset, running: running, more: more"></more-link>\n </div>\n </div>'}),(0,t(34880).N)("school-register-marks-by-pupil",function(e){return"Show me {pupil:".concat(e,"}")},function(e,n,t){var o=Lo.showRegisterMarksByPupil.parameters.period;return"Show me our {code:".concat(e.code,"} marks for {pupil:").concat(n,"} ").concat(o.toUtteranceText(t))},null);t(24536);
1p().components.register("school-attendance",{viewModel:function(e){var n=e.data,t=n.score,o=n.title,i=n.subtitle,a=n.periodsAndCohortsActionBar,s=n.otherIntentsActionBar;return{score:t,title:o,subtitle:i,target:O.school().attendanceTarget,periodsAndCohortsActionBar:a,otherIntentsActionBar:s}},template:'\n <div class="assist-report assist-report-chart">\n <div class="report-chart">\n <attendance-roundel params="score: score,\n target: target"></attendance-roundel>\n </div>\n <div class="report-title">{{title}}</div>\n <div class="report-subtitle">{{subtitle}}</div>\n <div class="report-appendix">\n <renderer-action-bar params="data: periodsAndCohortsActionBar"></renderer-action-bar>\n <renderer-action-bar params="data: otherIntentsActionBar"></renderer-action-bar>\n </div>\n </div>'});var Do="wholeFed",Bo="wholeSchool",jo="pupilPremium",$o="nonPupilPremium",Uo="fsm",Ho="nonFsm",Vo="sen",Go="nonSen",zo="ehcp",Yo="nonEhcp",_o="nationwideComparison",Ko=function(){return(0,j.A)(function e(n){(0,B.A)(this,e),this.code=void 0,this.code=n},[{key:"titleCaseDisplayText",get:function(){return Jo[this.code]}},{key:"normalCaseDisplayText",get:function(){return Xo[this.code]}}])}(),Jo={[Do]:"",[Bo]:"Whole School",[jo]:"Pupil Premium",[$o]:"Non-Pupil Premium",[Uo]:"All FSM (Legal and Other)",[Ho]:"Non-FSM",[Vo]:"SEN",[Go]:"Non-SEN",[zo]:"EHCP",[Yo]:"Non-EHCP",[_o]:"Rolling"},Xo={[Do]:"",[Bo]:"whole School",[jo]:"pupil premium",[$o]:"non-pupil premium",[Uo]:"all FSM (legal and other)",[Ho]:"non-FSM",[Vo]:"SEN",[Go]:"non-SEN",[zo]:"EHCP",[Yo]:"non-EHCP",[_o]:"rolling"},Qo=(Object.keys(Jo).map(function(e){return new Ko(e)}),t(89744)),Zo=(t(24196),t(60443));p().components.register("school-attendance-history",{viewModel:function(e){var n=new Co.Ax(e.data.period);e.data.allSeries.forEach(function(e){return e.data.forEach(function(e){return e.value=e.attendance})});var t=new Ko(e.data.historyType).titleCaseDisplayText,o=n.type===Co.LN.ThisSchoolYear,i={target:O.school().attendanceTarget,showMonths:!o,showTerms:o,plotWeekends:!o},a=n.type!==Co.LN.ThisSchoolYear,s=new Qo.wz(i),r=(0,Qo.Vw)(e.data,s.plotWeekends);return{chartData:r,chartOptions:s,period:n,periodName:(0,Zo.B)(n,r),titlePrefix:t,extendHeading:a,cohortSubtitle:e.data.subtitle,actionBar:e.data.actionBar?e.data.actionBar:void 0}},template:'\n <div class="assist-report assist-report-chart">\n <div class="report-chart">\n <big-timeline-chart params="data: chartData, options: chartOptions"></big-timeline-chart>\n </div>\n <div class="report-title">\n {{titlePrefix}} Attendance {{periodName}}{{#if extendHeading}}, Calculated From Start of Term{{/if}}\n </div>\n {{#if $data.cohortSubtitle}}\n <div class="report-subtitle">\n {{$data.cohortSubtitle}}\n </div>\n {{/if}}\n <div class="report-appendix">\n {{#if actionBar}}\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n {{/if}}\n </div>\n </div>'}),p().components.register("year-group-heatmap",{viewModel:function(e){var n=e.data.yearGrid,t=n.rows,o=n.offset,i=Number(O.school().attendanceTarget),a=e.data.actionBar,s=n.cohortString,r=new uo.r(i);var M=e.data.linksToGroups;return{rows:t,offset:o,heatmapName:"yearGrid",title:"Weekly Attendance by Year Group",target:i,invoke:e.invoke,linksToGroups:M,actionBar:a,cohortSubtitle:s,rowParser:function(e){return e.map(function(e){return new lo.f(e.id,e.name,e.yearToDate.required?100*e.yearToDate.attended/e.yearToDate.required:void 0,e.weekToDate.map(function(n){var t=(0,Et.xp)(n.date,Et.Bp.UTTERANCE_DATE_PARAM),o="Show me a breakdown of {breakdownType:BaseAbsences} "+"for {yearGroup:".concat(e.id,"} for the week of ").concat(t);return new co.Q(void 0,n,!0,o,r)}),e.link)})}}},template:'\n <div class="assist-report">\n <heatmap-title params="title: title,\n cohortSubtitle: cohortSubtitle,\n links: linksToGroups">\n </heatmap-title>\n <div class="report-section">\n <attendance-heatmap params="rows: rows,\n offset: offset,\n heatmapName: heatmapName,\n target: target,\n invoke: invoke,\n rowParser: rowParser">\n </attendance-heatmap>\n </div>\n {{#if actionBar}}\n <div class="report-appendix">
1\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n </div>\n {{/if}}\n </div>'}),p().components.register("pt-topic-tags",{viewModel:function(e){var n;e.args.topic&&(null===(n=e.configureAddToDashboard)||void 0===n||n.call(e,{utterance:{text:"Show me all our Parent Time topics"}}));var t=e.data.tagLimitReached,o=e.data.topicTags;return c.Ay.each(o,function(e){var n="{topic:".concat(e.id,"}");e.actions={amend:{text:"Amend the Parent Time topic ".concat(n,' to "').concat(e.name,'"'),get caretPosition(){return this.text.length-1}},archive:"Archive the Parent Time topic ".concat(n)}}),{topicTags:o,actions:{add:{text:'Add a Parent Time topic ""',get caretPosition(){return this.text.length-1}}},tagLimitReached:t}},template:'\n <div class="assist-report">\n <div class="report-title">Parent Time Topics</div>\n <div class="report-section">\n {{#ifnot topicTags.length}}\n <user-doc>\n <p>There are currently no topics.</p>\n </user-doc>\n {{/ifnot}}\n {{#if topicTags.length}}\n <table>\n <thead>\n <tr>\n <th>Topic</th>\n <th></th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n \x3c!-- ko foreach: topicTags --\x3e\n <tr>\n <td>{{name}}</td>\n <td>\n <assist-link params="utterance: {text: actions.amend.text},\n invocable: false,\n caretPosition: actions.amend.caretPosition">Amend...</assist-link>\n </td>\n <td>\n <assist-link params="utterance: {text: actions.archive}">Archive</assist-link>\n </td>\n </tr>\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n {{/if}}\n </div>\n {{#if tagLimitReached}}\n <div class="report-section">\n <user-doc>\n <p><limit-reached-msg>You have the maximum number of topics configured.</limit-reached-msg></p>\n </user-doc>\n </div>\n {{/if}}\n <div class="report-appendix">\n {{#ifnot tagLimitReached}}\n <action-bar>\n <action-group>\n <assist-link params="utterance: {text: actions.add.text},\n invocable: false,\n caretPosition: actions.add.caretPosition">Add...</assist-link>\n </action-group>\n </action-bar>\n {{/ifnot}}\n <div class="report-footnotes">\n <div>\n <span>Archiving a topic doesnât remove it from slots that it was already added to.</span>\n </div>\n </div>\n </div>\n </div>'});var ei=t(27538);t(93242);p().components.register("contact-detail-schools",{viewModel:function(e){var n=e.data;return c.Ay.each(n.pupilRelationships,function(e){e.description=ei.A.description(e)+" for:",e.actions={showPupil:"Show me {pupil:".concat(e.pupilId,"}"),showContacts:"Show me all contacts for {pupil:".concat(e.pupilId,"}")}}),{data:n}},template:'<contact-detail params="data: data"></contact-detail>'});t(66310);p().components.register("school-pupil-contacts",{viewModel:function(e){return e.utterances={},e.utterances.showPupil="Show me {pupil:".concat(e.args.pupil,"}"),{data:e.data,utterances:e.utterances}},template:'<pupil-contacts params="data: data, utterances: utterances"></pupil-contacts>'});var ni=t(3554),ti=t(79118);t(59371),t(88479),t(28711),t(36880),t(10156);function oi(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function ii(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?oi(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):oi(Object(t)).forEac
1h(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}p().components.register("pupil-summary",{viewModel:function(e){var n,t=e.args,o=e.data,i=e.timestamp,a=e.triggerStylingRefresh,s=t.pupil,r={title:o.name,avatar:{imgSrc:o.picUrl,icon:Yn.Ay.pupilPlaceholder}},M=(0,ti.kE)(o),l=(0,ti._R)(o),d=(0,ti.L2)(o),u=(0,ti.kK)(o,"Show me all tags for {pupil:".concat(s,"}"),a),A=o.registerGrid&&function(e,n){if(!n.rows.length)return[];var t=n.sessions.filter(function(n){return H()(n.date,W.F.dateFormatMomentJs).isSame(e,"day")}).map(function(e){var t=n.sessions.indexOf(e);return n.rows[0].entries[t]});return c.Ay.uniq(c.Ay.compact(t.map(function(e){var n;return null===(n=e[0])||void 0===n?void 0:n.notes})))}(i(),o.registerGrid),p=Lo.showSchoolAttendanceBreakdown.parameters.period,q=new Co.Ax(Co.LN.SchoolYearToDate),m="Show me a breakdown of {breakdownType:AllCodes} for {pupil:".concat(s,"} ")+p.toUtteranceText(q),f="Show me the register mark history for {pupil:".concat(s,"}"),h=[["Attendance Breakdown",m],["Activity History","Show me the activity history for {pupil:".concat(s,"}")],["Contacts","Show me all contacts for {pupil:".concat(s,"}")]].concat((0,Ao.A)(o.picUrl?[]:[["Whereâs the Picture?","Whereâs the picture for {pupil:".concat(s,"}?")]]));return null!==(n=O.school())&&void 0!==n&&n.addOns.logging&&(h=[["Actions","Show me all actions involving {pupil:".concat(s,"}")]].concat((0,Ao.A)(h))),{pupil:o,pupilId:s,summaryHeader:r,infoFields:M,tagsList:u,todaysNotes:A,currentAttendance:d,whereabouts:l,showRegisterMarksLink:f,actionBar:{groups:h.map(function(e){return{actions:[new ni.A({label:e[0],utteranceText:e[1],invocable:!0})]}})},globals:O,triggerStylingRefresh:a}},template:'\n <div class="assist-report">\n <div class="report-section">\n <summary-card-header params="data: summaryHeader">\n {{#if $data.infoFields}}\n <summary-card-info-fields params="fields: infoFields"></summary-card-info-fields>\n {{/if}}\n {{#if $data.tagsList}}\n <summary-card-tags-list params="data: tagsList"></summary-card-tags-list>\n {{/if}}\n </summary-card-header>\n </div>\n <div class="report-section attendance">\n <div class="report-section-title">Attendance Summary</div>\n <div class="summaryCardReportLine">\n <table>\n <tbody>\n <tr class="content">\n <td><attendance-roundel params="score: currentAttendance,\n target: globals.school().attendanceTarget"></attendance-roundel></td>\n \x3c!-- ko if: pupil.attendanceHistory --\x3e\n <td>\n <timeline-chart params="series: pupil.attendanceHistory.series"></timeline-chart>\n </td>\n \x3c!-- /ko --\x3e\n <td>\n <mini-register-grid params="data: pupil.registerGrid"></mini-register-grid>\n </td>\n \x3c!-- ko if: whereabouts --\x3e\n <td class="now">{{whereabouts}}</td>\n \x3c!-- /ko --\x3e\n </tr>\n <tr class="contentTitle">\n <td>\n Attendance\n <div class="note">School Year So Far</div>\n </td>\n \x3c!-- ko if: pupil.attendanceHistory --\x3e\n <td>\n {{pupil.attendanceHistory.trend}}\n <div class="note">{{pupil.attendanceHistory.series.length}}-Day Trend</div>\n </td>\n \x3c!-- /ko --\x3e\n <td>\n Past Week\n <div class="note">\n <assist-link params="utterance: {text: showRegisterMarksLink}">All Marks</assist-link>\n </div>\n </td>\n \x3c!-- ko if: whereabouts --\x3e\n <td class="now-title">\n Now\n <div class="note">Based on Register Mark</div>\n </td>\n \x3c!-- /ko --\x3e\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n {{#if todaysNotes.length}}\n <div class="report-section">\n <div class="report-section-title">Notes in Register Today</div>\n <div class="todaysNotes">\n {{#foreach todaysNotes}}\n <div class="note-body">{{$data}}</div>\n {{/foreach}}\n </div>\n </div>\n {{/if}}\n {{#if pupil.logEntries}}\n <div class="report-section">\n <div class="report-section-title">Actions</div>\n <next-or-previous-action class="logEntries" params="\n logData: pupil.logEntries[0],\n pupilId: pupilId,\n pupilDisplayName: pupil.name,\n triggerStylingRefresh: triggerStylingRefresh,\n "></next-or-previous-action>\n </div>\n {{/if}}\n <div class="report-appendix">
1\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n </div>\n </div>'}),p().components.register("pupil-tags",{viewModel:function(e){var n=e.data,t=n.pupilName,o=n.tags.map(function(e){return ii(ii({},e),{},{name:e.name.replace(/\s+/g,"")})});return{pupilSummaryLink:"Show me {pupil:".concat(e.args.pupil,"}"),pupilName:t||"",tags:o}},template:'\n <div class="assist-report">\n <div class="report-title">Tags</div>\n <div class="report-subtitle">\n for <assist-link params="utterance: {text: pupilSummaryLink}">{{pupilName}}</assist-link>\n </div>\n <div class="report-section">\n {{#ifnot tags.length}}\n <user-doc>\n <p>No tags</p>\n </user-doc>\n {{/ifnot}}\n {{#if tags.length}}\n <tag-list data-bind="foreach: tags">\n <pupil-tag>{{name}}</pupil-tag>\n </tag-list>\n {{/if}}\n </div>\n </div>'});t(52320);function ai(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function si(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?ai(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ai(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}p().components.register("pupils-in-social-care",{viewModel:function(e){var n=function(e){return e&&"page"in e?si(si({},e.page),e.page.logActions||e.logActions):e},t=n(e.data),o=t.logActions||{},i=t.footnotes,a=t.actionBar,s=void 0!==t.logActions,r=p().observableArray(),M=p().observable(),c=p().observable();function l(e){if(e){var t=n(e),i=t.logActions||{};M(t.token);var a=t.rows.map(function(e){var n,t,a,s,r=String(null!==(n=null!==(t=null!==(a=e.id)&&void 0!==a?a:e.pupilId)&&void 0!==t?t:null===(s=e.pupil)||void 0===s?void 0:s.id)&&void 0!==n?n:""),M=(r&&(i[r]||o[r])||[])[0];return si(si({},e),{},{headAction:M})});p().utils.arrayPushAll(r,a)}}return l(e.data),{rows:r,more:function(){e.invoke({lastPageToken:M()},c,l)},lastPageToken:M,footnotes:i,actionBar:a,running:c,showActions:s}},template:'\n <div class="assist-report">\n <div class="report-title">Pupils With a Social Worker</div>\n {{#if rows().length}}\n <div class="report-section">\n <table>\n <thead>\n <tr>\n <th>Pupil</th>\n <th>Year</th>\n <th>Social Care Status</th>\n \x3c!-- ko if: showActions --\x3e\n <th>Actions</th>\n \x3c!-- /ko --\x3e\n </tr>\n </thead>\n <tbody>\n \x3c!-- ko foreach: rows --\x3e\n <tr>\n <td>\n <assist-link params="utterance: {text: summaryUtteranceText}">{{fullName}}</assist-link>\n </td>\n <td>{{$data.yearGroup ? yearGroup.name : "-"}}</td>\n <td>\n <ul data-bind="foreach: socialCareStatuses">\n <li>{{$data}}</li>\n </ul>\n </td>\n \x3c!-- ko if: $component.showActions --\x3e\n <td class="actions-cell">\n <next-or-previous-action\n params="\n logData: headAction,\n pupilId: id,\n pupilDisplayName: fullName,\n triggerStylingRefresh: $component.triggerStylingRefresh,\n "></next-or-previous-action>\n </td>\n \x3c!-- /ko --\x3e\n </tr>\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n <more-link params="hasMore: lastPageToken, running: running, more: more"></more-link>\n </div>\n {{/if}}\n {{#if actionBar || footnotes.length > 0}}\n <div class="report-appendix">\n {{#if actionBar}}
1\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n {{/if}}\n <foot-notes>\n \x3c!-- ko foreach: footnotes --\x3e\n <div data-bind="text: $data"></div>\n \x3c!-- /ko --\x3e\n </foot-notes>\n </div>\n {{/if}}\n </div>'});var ri=t(37730);t(82323);p().components.register("school-register-grid-report",{viewModel:function(e){var n=p().observable(),t=p().observable(),o=e.data.pupilName,i=e.data.pupilDateOfBirth,a=e.data.pupilIsAtAp,s=e.data.marksCollectedByCalling,r="Show me {pupil:".concat(e.args.pupil,"}"),M=i?(0,Et.Yq)(i):void 0,c=new ri.e;function l(e){n(e.pageToken),c.merge(e.registerGrid)}return l(e.data),{cache:c,lastPageToken:n,running:t,more:function(){e.invoke({lastPageToken:n()},t,l)},showPupilUtterance:r,pupilName:o,formattedDob:M,pupilIsAtAp:a,marksCollectedByCalling:s}},template:'\n <div class="assist-report">\n <div class="report-title">Register Marks</div>\n <div class="report-subtitle">for\n {{#ifnot pupilIsAtAp}}\n <assist-link params="utterance: {text: showPupilUtterance}">{{pupilName}}</assist-link>\n {{/ifnot}}\n {{#if pupilIsAtAp}}\n {{pupilName}}\n <div class="dob" data-bind="if: formattedDob">Born {{formattedDob}}</div>\n {{/if}}\n </div>\n <div class="report-section">\n <register-grid params="cache: cache,\n withApMarkRendering: pupilIsAtAp,\n marksCollectedByCalling: marksCollectedByCalling"></register-grid>\n <more-link params="hasMore: lastPageToken, running: running, more: more"></more-link>\n </div>\n </div>'});t(69112),t(39396);var Mi=t(45650);var ci=function(e){return(0,Mi.b)(e)<157},li=t(56152);p().components.register("lunch-days",{viewModel:function(e){var n;if(e.args["lunch option"]){var t,o=H()(e.args.date,W.F.dateFormatMomentJs).format(Et.Bp.UTTERANCE_DATE_PARAM);null===(t=e.configureAddToDashboard)||void 0===t||t.call(e,{utterance:{text:"Show me the lunch options for ".concat(o)}})}var i=e.data.days;c.Ay.each(i,function(n){n.date=H()(n.date,W.F.dateFormatMomentJs),n.dow=n.date.format("ddd D"),0===n.lunchOptionSets.length&&(n.lunchOptionSets=JSON.parse(JSON.stringify(e.data.defaultSets))),n.showClassesText=c.Ay.some(n.lunchOptionSets,function(e){return e.classes.length}),c.Ay.each(n.lunchOptionSets,function(e){e.classesText=(0,_e.em)(c.Ay.map(e.classes,function(e){return e.name}))||"All other classes",c.Ay.each(e.options,function(e){if(e.colour||(e.colour=li.A[e.type].colour),e.isDark=ci(e.colour),e.text=e.description||e.label||"No description",e.actions={},"schoolLunch"===e.type){var t="{lunchOption:".concat(e.id,"}"),o=n.date.format(Et.Bp.UTTERANCE_DATE_PARAM);e.actions.setDescription={text:"Set the description for ".concat(t," for ").concat(o,' to "').concat(e.text,'"'),caretPosition:78}}else e.icon=ft[e.type]})})});var a=i[0].date.format(Et.Bp.LONG_DATE),s=null!==(n=e.args)&&void 0!==n&&n.date?"":" This Week",r=i[0].date.clone().subtract(1,"week"),M=i[0].date.clone().add(1,"week");return{days:i,commencing:a,thisWeek:s,actions:{showPreviousWeek:"Show me the lunch options for ".concat(r.format(Et.Bp.UTTERANCE_DATE_PARAM)),showNextWeek:"Show me the lunch options for ".concat(M.format(Et.Bp.UTTERANCE_DATE_PARAM))},icons:ft}},template:'\n <div class="assist-report">\n <div class="report-title">Lunch Options{{thisWeek}}</div>\n <div class="report-subtitle">Week Commencing {{commencing}}</div>\n <div class="report-section">\n <lunch-option-days>\n {{#foreach days}}\n <lunch-option-day>\n {{#foreach $data.lunchOptionSets}}\n {{#if $parent.showClassesText}}\n <lunch-option-day-row>\n <lunch-option-day-cell></lunch-option-day-cell>\n <lunch-option-day-cell>\n <classes-text>{{$data.classesText}}</classes-text>\n </lunch-option-day-cell>\n </lunch-option-day-row>\n {{/if}}\n <lunch-option-day-row>\n <lunch-option-day-cell>\n {{#if $index() == 0}}\n <day-title>\n <title-icon>{{{$component.icons.schoolLunch}}}</title-icon>
1\n <span>{{$parent.dow}}</span>\n </day-title>\n {{/if}}\n </lunch-option-day-cell>\n <lunch-option-day-cell>\n <lunch-option-set>\n {{#foreach $data.options}}\n <lunch-option data-bind="style: {background: colour}">\n <div>\n <option-icon>{{#if $data.icon}}{{{$data.icon}}}{{/if}}</option-icon>\n <option-desc data-bind="css: {isDark: isDark}">{{$data.text}}</option-desc>\n {{#if actions.setDescription}}\n <assist-link params="utterance: {text: actions.setDescription.text},\n caretPosition: actions.setDescription.caretPosition,\n invocable: false">\n Edit\n </assist-link>\n {{/if}}\n </div>\n </lunch-option>\n {{/foreach}}\n {{#ifnot $data.options.length}}\n <none-text>No lunch options configured</none-text>\n {{/if}}\n </lunch-option-set>\n </lunch-option-day-cell>\n </lunch-option-day-row>\n {{/foreach}}\n {{#ifnot $data.lunchOptionSets.length}}\n <lunch-option-day-cell>\n <day-title>\n <title-icon>{{{$component.icons.schoolLunch}}}</title-icon>\n <span>{{dow}}</span>\n </day-title>\n </lunch-option-day-cell>\n <lunch-option-day-cell>\n <none-text>No lunch options configured</none-text>\n </lunch-option-day-cell>\n {{/ifnot}}\n </lunch-option-day>\n {{/foreach}}\n </lunch-option-days>\n </div>\n <div class="report-appendix">\n <action-bar>\n <action-group>\n <assist-link params="utterance: {text: actions.showPreviousWeek}">Previous Week</assist-link>\n <assist-link params="utterance: {text: actions.showNextWeek}">Next Week</assist-link>\n </action-group>\n </action-bar>\n <div class="report-footnotes">\n <div>\n Hover over a lunch option to edit the description for the day.\n If you need to add or remove lunch options or make other changes, please\n <assist-link params="utterance: {text: \'Ask a Human: \'}, invocable: false">get in touch</assist-link>.\n </div>\n </div>\n </div>\n </div>'}),p().components.register("school-to-feds-sharing-overview",{viewModel:function(e){var n=e.data.homeLaSharingData,t=e.data.externalLasSharingData,o=e.data.readMoreLink,i=e.data.whatWillIReceiveLink;return{homeLaSharingData:n,externalLasSharingData:t,schoolIcons:ft,readMoreLink:o,whatWillIReceiveLink:i}},template:'\n <div class="assist-report">\n <div class="report-title">Sharing Attendance Data With Your LAs</div>\n <div class="report-section">\n <div><p>If you wish, Studybugs will share attendance data on your behalf with your home LA, so they can\n help you tackle the underlying causes of poor attendance. We can also, if you wish, share\n attendance data for individual pupils with each pupilâs LA. This covers cases where a child is in\n care with an LA other than your home LA.\n <assist-link params="utterance: {text: readMoreLink.utteranceText},\n invocable: readMoreLink.invocable,\n caretPosition: readMoreLink.caretPosition">\n {{readMoreLink.label}}\n </assist-link>\n </p>\n </div>\n <div><p>If you share data with an LA, you also receive data back from them.\n <assist-link params="utterance: {text: whatWillIReceiveLink.utteranceText},\n invocable: whatWillIReceiveLink.invocable,\n caretPosition: whatWillIReceiveLink.caretPosition">\n {{whatWillIReceiveLink.label}}\n </assist-link>\n </p>\n </div>\n <div><p>Your sharing instructions currently are:</p></div>\n <hr></hr>\n <sharing-status>\n <div class="row">\n <sharing-status-icon>'.concat(ft.instruction,'</sharing-status-icon>\n <sharing-status-details>\n <current-status-home-la>\n <p><strong data-bind="text: homeLaSharingData.currentSharingStatus"></strong></p>\n </current-status-home-la>\n <set-by-user-home-la data-bind="if: homeLaSharingData.whenAndWhoSet.length">\n <p><small data-bind="text: homeLaSharingData.whenAndWhoSet"></small></small></p>\n </set-by-user-home-la>\n <div class="links">
1\n <renderer-action-bar params="data: homeLaSharingData.actionBar"></renderer-action-bar>\n </div>\n </sharing-status-details>\n </div>\n <hr></hr>\n <div data-bind="foreach: externalLasSharingData">\n <div class="row">\n <sharing-status-icon>').concat(ft.instruction,'</sharing-status-icon>\n <sharing-status-details>\n <current-status-external-la>\n <p><strong data-bind="text: $data.currentSharingStatus"></strong></p>\n </current-status-external-la>\n <set-by-user-external-la data-bind="if: $data.whenAndWhoSet.length">\n <p><small data-bind="text: $data.whenAndWhoSet"></small></p>\n </set-by-user-external-la>\n <div class="links">\n <renderer-action-bar params="data: $data.actionBar"></renderer-action-bar>\n </div>\n </sharing-status-details>\n </div>\n <hr></hr>\n </div>\n </sharing-status>\n </div>\n </div>')});p().components.register("staff-list",{viewModel:function(e){var n=e.data,t=e.data.actionBar,o=p().observableArray(),i=p().observable(),a=p().observable();function s(e){i(e.pageToken),p().utils.arrayPushAll(o,e.staff)}return s(n),{staff:o,makeChangesEnquiryMessage:"Please update our staff for me as follows:\n[LIST THE STAFF YOU NEED ADDING, REMOVING OR UPDATING]\n",actionBar:t,pageToken:i,more:function(){e.invoke({pageToken:i()},a,s)},running:a}},template:'\n <div class="assist-report">\n <div class="report-title">Staff Accounts</div>\n <div class="report-section">\n <table>\n <thead>\n <tr>\n <th class="text-left">Staff Member</th>\n <th class="text-left">Roles</th>\n <th class="text-left" colspan="3"></th>\n </tr>\n </thead>\n <tbody>\n \x3c!-- ko foreach: staff --\x3e\n <tr>\n <td>\n {{details.name}}\n {{#if details.email}}\n <a class="email" href="mailto:{{details.email}}">{{details.email}}</a>\n {{/if}}\n {{#ifnot details.email}}\n <a class="email">-</a>\n {{/ifnot}}\n </td>\n <td>\n {{#if details?.roles.length}}\n <ul>\n {{#foreach: details.roles}}\n <li>{{$data}}</li>\n {{/foreach}}\n </ul>\n {{/if}}\n {{#ifnot details?.roles.length}}\n <no-role-msg>Receive alerts and view Bugs Map</no-role-msg>\n {{/ifnot}}\n </td>\n <td><assist-link params="assistLink: $data.actions.editLink"></assist-link></td>\n <td><assist-link params="assistLink: $data.actions.removeLink"></assist-link></td>\n <td><assist-link params="assistLink: $data.actions.passwordResetLink"></assist-link></td>\n </tr>\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n <more-link params="hasMore: pageToken, running: running, more: more"></more-link>\n </div>\n <div class="report-appendix">\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n <div class="report-footnotes">\n <div>\n <span>All staff with accounts have access to the Bugs Map and can receive alerts.</span>\n </div>\n </div>\n </div>\n </div>'}),p().components.register("staff-member-details",{viewModel:function(e){var n=e.data;return{fullName:n.name,nameChangeLink:n.nameChangeLink,email:n.email,emailChangeLink:n.emailChangeLink,roles:n.roles,actionBar:n.actionBar}},template:'\n <div class="assist-report">\n <div class="report-section">\n <table>\n <tbody>\n <tr>\n <td class="rowHeading">
1Name</td>\n <td data-bind="text: fullName"></td>\n <td>\n <assist-link params="assistLink: nameChangeLink"></assist-link>\n </td>\n </tr>\n <tr>\n <td class="rowHeading">Email</td>\n <td data-bind="text: email"></td>\n <td>\n <assist-link params="assistLink: emailChangeLink"></assist-link>\n </td>\n </tr>\n \x3c!-- ko if: roles && roles.length --\x3e\n \x3c!-- ko foreach: roles --\x3e\n <tr>\n <td class="rowHeading"\n data-bind="visible: $index() === 0,\n attr: { rowspan: $parent.roles.length },\n text: \'Roles\'">\n </td>\n <td data-bind="text: $data.displayText"></td>\n <td>\n \x3c!-- ko if: $data.removeLink --\x3e\n <assist-link params="assistLink: $data.removeLink"></assist-link>\n \x3c!-- /ko --\x3e\n </td>\n </tr>\n \x3c!-- /ko --\x3e\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n </div>\n <div class="report-appendix">\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n </div>\n </div>\n '});var di=t(45709),ui=t(35544);(0,di.aD)("pupil-count",{addToDashboardAllowed:!1}),p().components.register("pupil-count",{viewModel:function(e){var n=new ui.L(e.data),t=e.args["year group"],o=t?" in {yearGroup:".concat(t,"}"):"",i="Show me ".concat(t?"the":"our"," ").concat(n.utterancePart).concat(o);return{definitionLink:n.definitionLink,showMeUtterance:i}},template:'\n <action-bar>\n <action-group>\n <assist-link params="utterance: {text: showMeUtterance}">Show Pupils</assist-link>\n </action-group>\n {{#if definitionLink}}\n <action-group>\n <assist-link params="utterance: {text: definitionLink.utterance}">{{definitionLink.displayText}}\n </assist-link>\n </action-group>\n {{/if}}\n </action-bar>'});t(51680);p().components.register("pupils-in-range",{viewModel:function(e){var n=new ui.L(e.data.attendanceRange),t=e.data.title||n.titleCaseDisplayText;var o=e.data.pupils,i=e.data.logActions,a=e.data.pageToken,s=O.school().attendanceTarget,r=e.invoke,M=e.data.yearGroupName,c=void 0!==e.data.logActions;return{pupils:o,logActions:i,pageToken:a,target:s,invoke:r,range:n,title:t,yearGroupName:M,parseRows:function(e){return e.map(function(e){return e.display=e.className?"".concat(e.name,", ").concat(e.className):e.name,e.link="Show me {pupil:".concat(e.id,"}"),e})},actionBar:e.data.actionBar,showActions:c,triggerStylingRefresh:e.triggerStylingRefresh}},template:'\n <div class="assist-report">\n <div class="report-title">{{title}}</div>\n {{#if yearGroupName}}\n <div class="report-subtitle">in {{yearGroupName}}</div>\n {{/if}}\n <div class="report-section">\n <pupil-attendance-table\n params="pupils: pupils,\n target: target,\n invoke: invoke,\n rowParser: parseRows,\n pageToken: pageToken,\n showActions: showActions,\n logActions: logActions,\n triggerStylingRefresh: triggerStylingRefresh">\n </pupil-attendance-table>\n </div>\n <div class="report-appendix">\n {{#if actionBar}}\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n {{/if}}\n {{#if range.definitionLink}}\n <action-bar>\n <action-group>\n <assist-link params="utterance: { text: range.definitionLink.utterance }">{{range.definitionLink.displayText}}\n </assist-link>\n </action-group>\n </action-bar>\n {{/if}}\n </div>\n </div>'});t(87019);p().components.register("potential-ap-matches",{viewModel:function(e){var n=p().observable(e.data.pageToken),t=p().observableArray(),o=p().observable(!1),i=e.data.actionBar;function a(e){e&&(n(e.pageToken),p().utils.arrayPushAll(t,e.matches))}return a(e.data),{matches:t,pageToken:n,running:o,actionBar:i,more:function(){e.invoke({pageToken:n()},o,a)}}},template:'\n <div class="assist-report">\n <div class="report-section">\n <table>\n <tbody>\n \x3c!-- ko foreach: matches --\x3e\n <tr>\n <td><assist-link params="assistLink: apLink"></assist-link></td>\n </tr>\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n <more-link params="hasMore: pageToken, running: running, more: more"></more-link>\n </div>\n <div class="report-appendix">
1\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n </div>\n </div>\n '});t(61123);function Ai(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function pi(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?Ai(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Ai(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function qi(e){var n=function(e){switch(e.type){case"connected":return{text:"Connected",className:"statusConnected",tooltip:{message:"Connected, and attendance data is being received"}};case"dropped":return{text:"Dropped ".concat(H()(e.lastSyncTime).fromNow()),className:"statusNotConnected",tooltip:{message:"Attendance data is no longer being received. Studybugs will contact the AP to restore the connection"}};case"pending":return{text:"Pending",className:"statusIncomplete",tooltip:{message:"Weâre currently onboarding this AP. Weâll alert you once setup is complete."}}}throw new Error("Unrecognised AP sharing status")}(e.status);return pi(pi({},e),{},{pupilText:void 0===e.pupilCount?"-":"".concat(e.pupilCount),statusText:n.text,statusClass:n.className,statusTooltip:n.tooltip})}p().components.register("aps-sharing-status",{viewModel:function(e){var n=e.data,t=n.totals,o=n.actionBar,i=p().observable(e.data.pageToken),a=p().observableArray(),s=p().observable(!1);function r(e){e&&(i(e.pageToken),p().utils.arrayPushAll(a,e.rows.map(qi)))}return r(e.data),{totalApsText:"".concat(t.totalAps," in total"),sharingApsText:"".concat(t.sharingAps," of ").concat(t.totalAps," (").concat(t.sharingPercentage,"%) connected"),currentPlacementsText:"".concat(t.activePupils," in total"),rows:a,pageToken:i,running:s,actionBar:o,more:function(){e.invoke({pageToken:i()},s,r)}}},template:'\n <div class="assist-report">\n <div class="report-title">Alternative Provisions</div>\n <div class="report-section">\n {{#if rows().length}}\n <table class="apsSharingTable">\n <thead>\n <tr class="columnHeaders">\n <th>Provision</th>\n <th>Status</th>\n <th>Current Placements</th>\n </tr>\n <tr class="columnHeaderDetails">\n <th data-bind="text: totalApsText"></th>\n <th data-bind="text: sharingApsText"></th>\n <th data-bind="text: currentPlacementsText"></th>\n </tr>\n </thead>\n <tbody data-bind="foreach: rows">\n <tr class="apRow">\n <td class="provision">\n <span>{{provisionName}}</span>\x3c!-- ko if: location --\x3e<span\n class="location"\n data-bind="text: \', \' + location"\n ></span>\x3c!-- /ko --\x3e\n </td>\n <td>\n <span class="status" data-bind="css: statusClass">\n <span data-bind="text: statusText"></span>\n </span>\n \x3c!-- ko if: statusTooltip --\x3e\n <div data-bind="tooltip: {position: \'below\'}">\n <div data-bind="text: statusTooltip.message"></div>\n </div>\n \x3c!-- /ko --\x3e\n </td>\n <td class="pupils">\n \x3c!-- ko if: $data.pupilsLink --\x3e\n <assist-link params="assistLink: pupilsLink"></assist-link>\n \x3c!-- /ko --\x3e\n \x3c!-- ko ifnot: $data.pupilsLink --\x3e\n <span>{{pupilText}}</span>\n \x3c!-- /ko --\x3e\n </td>\n </tr>\n </tbody>\n </table>\n <more-link params="hasMore: pageToken, running: running, more: more"></more-link>\n {{/if}}\n {{#ifnot rows().length}}\n <user-doc>\n <p>No APs added.</p>\n </user-doc>\n {{/if}}\n </div>\n <div class="report-appendix">
1\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n </div>\n </div>\n '}),p().components.register("aps-with-school-pupils",{viewModel:function(e){var n=e.data,t=n.childrenAtAllApsLink,o=n.notSeeingApLink,i=p().observable(n.pageToken),a=p().observableArray(),s=p().observable(!1);function r(e){e&&(i(e.pageToken),p().utils.arrayPushAll(a,e.aps))}return r(n),{rows:a,childrenAtAllApsLink:t,notSeeingApLink:o,pageToken:i,running:s,more:function(){e.invoke({pageToken:i()},s,r)}}},template:'\n <div class="assist-report">\n <div class="report-title">Alternative Provisions With Children From Your School</div>\n <div class="report-section">\n <user-doc><p>\n {{#if rows().length > 0}}\n Includes provisions with current placements, shared using Studybugs.\n {{/if}}\n {{#if rows().length === 0}}\n When provisions with current placements are shared using Studybugs those children will appear here.\n {{/if}}\n </p></user-doc>\n </div>\n {{#if rows().length > 0 }}\n <div class="report-section">\n <table>\n <thead>\n <tr>\n <th>Provision</th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n \x3c!-- ko foreach: rows --\x3e\n <tr>\n <td data-bind="text: apName"></td>\n <td>\n \x3c!-- ko if: $data.viewPupilsLink --\x3e\n <assist-link params="assistLink: viewPupilsLink"></assist-link>\n \x3c!-- /ko --\x3e\n </td>\n </tr>\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n <more-link params="hasMore: pageToken, running: running, more: more"></more-link>\n </div>\n {{/if}}\n <div class="report-appendix">\n <action-bar>\n {{#if childrenAtAllApsLink}}\n <action-group>\n <assist-link params="assistLink: childrenAtAllApsLink"></assist-link>\n </action-group>\n {{/if}}\n {{#if notSeeingApLink}}\n <action-group>\n <assist-link params="assistLink: notSeeingApLink"></assist-link>\n </action-group>\n {{/if}}\n </action-bar>\n </div>\n </div>'});var mi=t(39902);function fi(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function hi(e){var n,t=[],o=p().observable(),i=p().observableArray();return e.forEach(function(e){var a=function(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?fi(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):fi(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}({},e.registerGrid);(0,mi.z)(o,i,a),n||(n=e.registerGrid);var s=e.dateOfBirth?(0,Et.Yq)(e.dateOfBirth):void 0;t.push({name:e.name,dateOfBirth:s,registerGrid:a,viewRegisterMarkHistoryLink:e.viewRegisterMarkHistoryLink})}),{rows:t,registerGridColumnHeader:n}}function Wi(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function gi(e){var n,t=[],o=p().observable(),i=p().observableArray();return e.forEach(function(e){var a=function(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?Wi(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Wi(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}({},e.registerGrid);(0,mi.z)(o,i,a),n||(n=e.registerGrid);var s=e.dateOfBirth?(0,Et.Yq)(e.dateOfBirth):void 0;t.push({name:e.name,dateOfBirth:s,registerGrid:a,viewRegisterMarkHistoryLink:e.viewRegisterMarkHistoryLink})}),{rows:t,registerGridColumnHeader:n}}p().components.register("pupils-at-all-aps",{viewModel:{createViewModel:function(e,n){var t=e.data,o=t.allApsLink,i=t.addApLink,a=p().observable(t.pageToken),s=n.element,r=0;function M(){var e=s.querySelectorAll(".ap-group > table > tbody > tr > td.child-name");if(e.length){e.forEach(function(e){e.style.width=""});var n=Math.ceil(Math.max.apply(Math,(0,Ao.A)(Array.from(e).map(function(e){return e.getBoundingClientRect().width}))));r=Math.max(r,n),e.forEach(function(e){e.style.width="".concat(r,"px")})}}var c=p().observableArray([]),l=p().observable(!1);function d(e){e&&(a(e.pageToken),e.aps.forEach(function(e){var n=hi(e.pupils),t=c(),o=t[t.length-1];o&&o.apName===e.apName?p().utils.arrayPushAll(o.rows,n.rows):c.push({apName:e.apName,rows:p().observableArray(n.rows),registerGridColumnHeader:n.registerGridColumnHeader})}),p().tasks.runEarly(),requestAnimationFrame(M))}d(t);return{aps:c,withApMarkRendering:!0,pageToken:a,running:l,more:function(){e.invoke({pageToken:a()},l,d)},allApsLink:o,addApLink:i}}},template:'\n <div class="assist-report">\n <div class="report-title">Current Alternative Provision Placements</div>
1\n {{#if aps().length === 0}}\n <div class="report-section">\n <user-doc>\n {{#if addApLink}}\n <p>\n When you <assist-link params="assistLink: addApLink"></assist-link> and they share placements with you\n theyâll appear here.\n </p>\n {{/if}}\n {{#ifnot addApLink}}\n <p>When your APs share placements with you theyâll appear here.</p>\n {{/if}}\n </user-doc>\n </div>\n {{/if}}\n <div class="ap-groups">\n \x3c!-- ko foreach: aps --\x3e\n <div class="report-section ap-group">\n <div class="report-section-title">{{apName}}</div>\n <table>\n <thead>\n <tr>\n <th></th>\n <th class="dayHeadings">\n \x3c!-- ko with: registerGridColumnHeader --\x3e\n <mini-register-grid params="data: $data,\n hideContent: true,\n withApMarkRendering: $component.withApMarkRendering">\n </mini-register-grid>\n \x3c!-- /ko --\x3e\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n \x3c!-- ko foreach: rows --\x3e\n <tr>\n <td class="child-name">\n {{name}}\n <div class="dob" data-bind="if: $data.dateOfBirth">Born {{dateOfBirth}}</div>\n </td>\n <td class="marks">\n <mini-register-grid params="data: registerGrid,\n hideHeadings: true,\n withApMarkRendering: $component.withApMarkRendering">\n </mini-register-grid>\n </td>\n <td><assist-link params="assistLink: viewRegisterMarkHistoryLink"></assist-link></td>\n </tr>\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n </div>\n \x3c!-- /ko --\x3e\n </div>\n <more-link params="hasMore: pageToken, running: running, more: more"></more-link>\n {{#if allApsLink}}\n <div class="report-appendix">\n <action-bar>\n <action-group>\n <assist-link params="assistLink: allApsLink"></assist-link>\n </action-group>\n </action-bar>\n </div>\n {{/if}}\n </div>'}),p().components.register("pupils-at-ap",{viewModel:function(e){var n=e.data,t=n.apName,o=n.allApsLink,i=n.childrenAtAllApsLink,a=p().observable(n.pageToken),s=p().observableArray(),r=p().observable(!1),M=p().observable();function c(e){if(e){a(e.pageToken);var n=gi(e.pupils);M()||M(n.registerGridColumnHeader),p().utils.arrayPushAll(s,n.rows)}}c(n);return{apName:t,allApsLink:o,childrenAtAllApsLink:i,rows:s,registerGridColumnHeader:M,withApMarkRendering:!0,pageToken:a,running:r,more:function(){e.invoke({pageToken:a()},r,c)}}},template:'\n <div class="assist-report">\n <div class="report-title">Children Placed At {{apName}}</div>\n <div class="report-section">\n <table>\n <thead>\n <tr>\n <th></th>\n <th class="dayHeadings">\n \x3c!-- ko with: registerGridColumnHeader --\x3e\n <mini-register-grid params="data: $data,\n hideContent: true,\n withApMarkRendering: $component.withApMarkRendering">\n </mini-register-grid>\n \x3c!-- /ko --\x3e\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n \x3c!-- ko foreach: rows --\x3e\n <tr>\n <td>\n {{name}}\n <div class="dob" data-bind="if: $data.dateOfBirth">Born {{dateOfBirth}}</div>\n </td>\n <td class="marks">\n <mini-register-grid params="data: registerGrid,\n hideHeadings: true,\n withApMarkRendering: $component.withApMarkRendering">\n </mini-register-grid>\n </td>\n <td><assist-link params="assistLink: viewRegisterMarkHistoryLink"></assist-link></td>\n </tr>\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n <more-link params="hasMore: pageToken, running: running, more: more"></more-link>\n </div>
1\n {{#if allApsLink || childrenAtAllApsLink}}\n <div class="report-appendix">\n <action-bar>\n <action-group>\n {{#if allApsLink}}\n <assist-link params="assistLink: allApsLink"></assist-link>\n {{/if}}\n {{#if childrenAtAllApsLink}}\n <assist-link params="assistLink: childrenAtAllApsLink"></assist-link>\n {{/if}}\n </action-group>\n </action-bar>\n </div>\n {{/if}}\n </div>'});var vi="live",bi="pending",yi="not-shared",wi={school:"school",la:"LA"},ki={[vi]:"Sharing",[bi]:"Pending",[yi]:"Not Sharing"},xi={[vi]:"Attendance information is being shared with {{orgName}}",[bi]:"Weâll send a request to {{orgName}} to get set up. Once theyâre set up attendance will start being shared.",[yi]:"Please set the {{connectionType}}"};p().components.register("ap-pupil-sharing-status",{viewModel:function(e){var n,t,o,i=null!==(n=null===(t=e.status)||void 0===t?void 0:t.type)&&void 0!==n?n:"not-shared";return{status:i,tooltipMessage:null===(o=xi[i])||void 0===o?void 0:o.replace("{{orgName}}",e.orgName).replace("{{connectionType}}",wi[e.connectionType]),label:ki[i]}},template:'\n <span class="status" data-bind="class: status">{{label}}</span>\n {{#if tooltipMessage}}\n <div data-bind="tooltip: {position: \'above\'}">{{tooltipMessage}}</div>\n {{/if}}\n '});var Ti="NoMisSet",Si="dataCapturePupilsChanged";function Ci(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function Pi(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?Ci(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Ci(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function Ii(){M()(document).trigger(Si)}function Oi(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function Li(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?Oi(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Oi(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}p().components.register("data-capture-current-pupils",{viewModel:function(e){var n=e.data,t=n.reportTitle,o=n.misStatus,i=n.establishmentHasFullCapture,a=n.actionBar,s=n.pupilMarkedAsLeft,r=p().observable(e.data.pageToken),c=p().observableArray(),l=p().observable(!1),d=o.statusType!==Ti,u=O.isAlternativeProvision(),A=u?"children":"pupils",q=u?"Children":"Pupils";function m(e){if(e){r(e.pageToken);var n="-",t=e.pupilInformation.map(function(e){var t,o,i,a;return Pi(Pi({},e),{},{className:e.className||n,dateOfBirth:e.dateOfBirth?(0,Et.Yq)(e.dateOfBirth):n,mainSchoolName:e.mainSchoolName||n,mainSchoolConnectionStatus:e.mainSchoolConnectionStatus,laName:e.laName||n,laConnectionStatus:e.laConnectionStatus,requiredSessionsSetUpToDate:e.requiredSessionsSetUpToDate?"Set up to "+(0,Et.Yq)(e.requiredSessionsSetUpToDate):"",requiredSessionsChangeLink:null!==(t=e.requiredSessionsChangeLink)&&void 0!==t?t:null,requiredSessionsWarningMessage:null!==(o=e.requiredSessionsWarningMessage)&&void 0!==o?o:null,editLink:null!==(i=e.editLink)&&void 0!==i?i:null,markAsLeftOrCurrentLink:null!==(a=e.markAsLeftOrCurrentLink)&&void 0!==a?a:null,warningMessage:p().pureComputed(function(){return e.requiredSessionsWarningMessage?e.requiredSessionsWarningMessage:e.laWarningMessage?e.laWarningMessage:e.mainSchoolWarningMessage?e.mainSchoolWarningMessage:null}),informationalWarning:!e.requiredSessionsWarningMessage&&Boolean(e.laWarningMessage||e.mainSchoolWarningMessage)})});p().utils.arrayPushAll(c,t)}}s&&Ii(),m(e.data),e.viaDashboard&&M()(document).on(Si,h);var f=p().computed(function(){return c().some(function(e){return e.hasAnyWarnings})});function h(){var n;null===(n=e.refresh)||void 0===n||n.call(e)}return{reportTitle:t,rows:c,nounPlural:A,nounPluralCapitalised:q,pageToken:r,actionBar:a,running:l,more:function(){e.invoke({pageToken:r()},l,m)},hasWarningInAnyRow:f,hasAnyMis:d,establishmentHasFullCapture:i,coreIcons:Gt.Ay,dispose:function(){e.viaDashboard&&M()(document).off(Si,h)}}},template:'\n <div class="assist-report">\n <div class="report-title" data-bind="text: reportTitle"></div>
1\n {{#if !hasAnyMis || rows().length === 0}}\n <div class="report-section">\n <user-doc>\n {{#if hasAnyMis}}\n {{#ifnot establishmentHasFullCapture}}\n <p>{{nounPluralCapitalised}} will appear here once we have synchronised your data.</p>\n {{/ifnot}}\n {{#if establishmentHasFullCapture}}\n <p>Add some {{nounPlural}} and youâll see them here.</p>\n {{/if}}\n {{/if}}\n {{#ifnot hasAnyMis}}\n <p>{{nounPluralCapitalised}} will appear here once an MIS has been connected and we have\n synchronised your data.</p>\n {{/ifnot}}\n </user-doc>\n </div>\n {{/if}}\n {{#if hasAnyMis && rows().length > 0}}\n <div class="report-section">\n <table>\n <thead>\n <tr>\n \x3c!-- ko if: hasWarningInAnyRow --\x3e\n <th></th>\n \x3c!-- /ko --\x3e\n <th>Name</th>\n <th>Registration Group</th>\n <th>School</th>\n <th>Local Authority</th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n \x3c!-- ko foreach: rows --\x3e\n <tr data-bind="css: { \'has-warning\': $data.hasAnyWarnings, informational: $data.informationalWarning }">\n \x3c!-- ko if: $parent.hasWarningInAnyRow --\x3e\n <td></td>\n \x3c!-- /ko --\x3e\n <td data-bind="text: name"></td>\n <td data-bind="text: className"></td>\n <td>\n <span data-bind="text: mainSchoolName"></span>\n <br/>\n <ap-pupil-sharing-status\n params="status: mainSchoolConnectionStatus,\n orgName: mainSchoolName,\n connectionType: \'school\'"></ap-pupil-sharing-status>\n </td>\n <td>\n <span data-bind="text: laName"></span>\n <br/>\n <ap-pupil-sharing-status\n params="status: laConnectionStatus,\n orgName: laName,\n connectionType: \'la\'"></ap-pupil-sharing-status>\n </td>\n <td class="editLinkCell"><assist-link params="assistLink: editLink"></assist-link></td>\n </tr>\n \x3c!-- ko if: $data.hasAnyWarnings --\x3e\n <tr class="warningRow" data-bind="css: { informational: $data.informationalWarning }">\n \x3c!-- ko if: $data.informationalWarning --\x3e\n <td></td>\n \x3c!-- /ko --\x3e\n \x3c!-- ko ifnot: $data.informationalWarning --\x3e\n <td class="warningIcon" data-bind="html: $component.coreIcons.warningTriangle"></td>\n \x3c!-- /ko --\x3e\n \x3c!-- ko if: $data.warningMessage --\x3e\n <td class="warningMessage" colspan="5" data-bind="text: $data.warningMessage">\n </td>\n \x3c!-- /ko --\x3e\n </tr>\n \x3c!-- /ko --\x3e\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n <more-link params="hasMore: pageToken, running: running, more: more"></more-link>\n </div>\n {{/if}}\n {{#if actionBar}}\n <div class="report-appendix">\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n </div>\n {{/if}}\n </div>\n '}),p().components.register("pupil-information",{viewModel:function(e){var n=e.data,t=n.name,o=n.nameChangeLink,i=n.className,a=n.classChangeLink,s=n.classClearLink,r=n.dateOfBirth,M=n.dateOfBirthChangeLink,c=n.dateOfBirthClearLink,l=n.dateOfBirthWarningMessage,d=n.mainSchoolName,u=n.mainSchoolConnectionStatus,A=n.mainSchoolChangeLink,p=n.mainSchoolClearLink,q=n.mainSchoolWarningMessage,m=n.laName,f=n.laConnectionStatus,h=n.laChangeLink,W=n.laClearLink,g=n.laWarningMessage,v=n.requiredSessionsSetUpToDate,b=n.requiredSessionsChangeLink,y=n.requiredSessionsWarningMessage,w=n.pupilAddedReactivatedOrUpdated,k=n.markAsLeftOrCurrentLink,x=n.leftOn,T=n.establishmentHasFullCapture,S=n.actionBar,C="-",P=i||C,I=r?(0,Et.Yq)(r):C,L=d||C,E=m||C,N=v?"Set up to "+(0,Et.Yq)(v):C,F=x?(0,Et.Yq)(x):C;return w&&(!function(){var e=O.school(),n=e.regGroups().map(function(e){return e.name}),t=e.coverGroups().map(function(e){return e.name});-1===n.concat(t).indexOf(P)&&an.A.getMySchools(function(n){var t=n.find(function(n){return n.id===e.id});t&&(e.regGroups(t.regGroups),e.coverGroups(t.coverGroups),e.showGroupOfPupilsNotAllocatedToClass=t.showGroupOfPupilsNotAllocatedToClass)})}(),Ii()),{icons:Gt.Ay,fullName:t,nameChangeLink:o,dateOfBirthFormatted:I,dateOfBirthChangeLink:M,dateOfBirthClearLink:c,dateOfBirthWarningMessage:l,regGroup:P,regGroupChangeLink:a,regGroupClearLink:s,mainSch
1oolName:L,mainSchoolConnectionStatus:u,mainSchoolChangeLink:A,mainSchoolClearLink:p,mainSchoolWarningMessage:q,laName:E,laConnectionStatus:f,laChangeLink:h,laClearLink:W,laWarningMessage:g,requiredSessionsSetUpToDate:N,requiredSessionsChangeLink:b,requiredSessionsWarningMessage:y,pupilAddedReactivatedOrUpdated:w,markAsLeftOrCurrentLink:k,lastDayFormatted:F,establishmentHasFullCapture:T,actionBar:S}},template:'\n <div class="assist-report">\n <div class="report-title">\n <span data-bind="text: fullName"></span>\n {{#if nameChangeLink}}\n <span class="name-link"><assist-link params= "assistLink: nameChangeLink">Change Nameâ¦</assist-link></span>\n {{/if}}\n </div>\n <div class="report-section">\n <table>\n <tbody>\n <tr>\n <td></td>\n <td class="rowHeading">Registration Group</td>\n <td class="rowContent" data-bind="text: regGroup"></td>\n <td></td>\n <td>\n \x3c!-- ko if: regGroupChangeLink --\x3e\n <assist-link params= "assistLink: regGroupChangeLink"></assist-link>\n \x3c!-- /ko --\x3e\n </td>\n <td class="clearLinkCell" data-bind="css: { \'hasClearLink\': regGroupClearLink }">\n \x3c!-- ko if: regGroupClearLink --\x3e\n <assist-link params="assistLink: regGroupClearLink"></assist-link>\n \x3c!-- /ko --\x3e\n </td>\n </tr>\n <tr class="informational" data-bind="css: { \'has-warning\': dateOfBirthWarningMessage }">\n <td></td>\n <td class="rowHeading">Date of Birth</td>\n <td class="rowContent" data-bind="text: dateOfBirthFormatted"></td>\n <td></td>\n <td>\n \x3c!-- ko if: dateOfBirthChangeLink --\x3e\n <assist-link params= "assistLink: dateOfBirthChangeLink"></assist-link>\n \x3c!-- /ko --\x3e\n </td>\n <td class="clearLinkCell" data-bind="css: { \'hasClearLink\': dateOfBirthClearLink }">\n \x3c!-- ko if: dateOfBirthClearLink --\x3e\n <assist-link params="assistLink: dateOfBirthClearLink"></assist-link>\n \x3c!-- /ko --\x3e\n </td>\n </tr>\n \x3c!-- ko if: dateOfBirthWarningMessage --\x3e\n <tr class="warningRow informational">\n <td></td>\n <td class="warningMessage" data-bind="text: dateOfBirthWarningMessage" colspan="5"></td>\n </tr>\n \x3c!-- /ko --\x3e\n \x3c!-- ko if: establishmentHasFullCapture --\x3e\n <tr data-bind="css: { \'has-warning\': requiredSessionsWarningMessage }">\n <td></td>\n <td class="rowHeading">Required Sessions</td>\n <td class="rowContent" data-bind="text: requiredSessionsSetUpToDate"></td>\n <td></td>\n <td><assist-link params="assistLink: requiredSessionsChangeLink"></assist-link></td>\n <td></td>\n </tr>\n \x3c!-- ko if: requiredSessionsWarningMessage --\x3e\n <tr class="warningRow">\n <td class="warningIcon">{{{icons.warningTriangle}}}</td>\n <td class="warningMessage" data-bind="text: requiredSessionsWarningMessage" colspan="5"></td>\n </tr>\n \x3c!-- /ko --\x3e\n <tr>\n <td></td>\n <td class="rowHeading">Last Day</td>\n <td class="rowContent" data-bind="text: lastDayFormatted"></td>\n <td></td>\n <td><assist-link params="assistLink: markAsLeftOrCurrentLink"></assist-link></td>\n <td></td>\n </tr>\n \x3c!-- /ko --\x3e\n\n <tr class="dividing-header">\n <td></td>\n <td colspan="5">Data Sharing</td>\n </tr>\n <tr class="informational" data-bind="css: { \'has-warning\': mainSchoolWarningMessage }">\n <td></td>\n <td class="rowHeading">School</td>\n <td class="rowContent" data-bind="text: mainSchoolName"></td>\n <td class="sharingStatus">\n \x3c!-- ko if: mainSchoolConnectionStatus --\x3e\n <ap-pupil-sharing-status params="status: mainSchoolConnectionStatus,\n orgName: mainSchoolName,\n connectionType: \'school\'"></ap-pupil-sharing-status>\n \x3c!-- /ko --\x3e\n </td>\n <td><assist-link params="assistLink: mainSchoolChangeLink"></assist-link></td>\n <td class="clearLinkCell" data-bind="css: { \'hasClearLink\': mainSchoolClearLink }">\n <assist-link params="assistLink: mainSchoolClearLink"></assist-link>\n </td>\n </tr>\n \x3c!-- ko if: mainSchoolWarningMessage --\x3e\n <tr class="warningRow informational">\n <td></td>\n <td class="warningMessage" data-bind="text: mainSchoolWarningMessage" colspan="5"></td>\n </tr>\n \x3c!-- /ko --\x3e\n <tr class="informational" data-bind="css: { \'has-warning\': laWarningMessage }">\n <td></td>\n <td class="rowHeading">Local Authority</td>\n <td class="rowContent" data-bind="text: laName"></td>\n <td class="sharingStatus">\n \x3c!-- ko if: laConnectionStatus --\x3e\n <ap-pupil-sharing-status params="status: laConnectionStatus,\n orgName: laName,\n connectionType: \'la\'"></ap-pupil-sharing-status>\n \x3c!-- /ko --\x3e\n </td>\n <td><assist-link params= "assistLink: laChangeLink"></assist-link></td>\n <td class="clearLinkCell" data-bind="css: { \'hasClearLink\': laClearLink }">\n <assist-link params="assistLink: laClearLink"></assist-link>\n </td>\n </tr>\n \x3c!-- ko if: laWarningMessage --\x3e\n <tr class="warningRow informational">\n <td></td>\n <td class="warningMessage" data-bind="text: laWarningMessage" colspan="5"></td>\n </tr>\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n </div>\n {{#if actionBar}}\n <div class="report-appendix">
1\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n </div>\n {{/if}}\n </div>\n '}),p().components.register("pupils-who-have-left",{viewModel:function(e){var n=e.data,t=n.reportTitle,o=n.actionBar,i=n.addNewPupilLink,a=p().observable(e.data.pageToken),s=p().observableArray(),r=p().observable(!1),c=O.isAlternativeProvision(),l=c?"child":"pupil",d=c?"Children":"Pupils";function u(e){if(e){a(e.pageToken);var n="-",t=e.pupilInformation.map(function(e){return Li(Li({},e),{},{className:e.className||n,dateOfBirth:e.dateOfBirth?(0,Et.Yq)(e.dateOfBirth):n,mainSchoolName:e.mainSchoolName||n,laName:e.laName||n,leftOn:(0,Et.Yq)(e.leftOn)})});p().utils.arrayPushAll(s,t)}}function A(){var n;null===(n=e.refresh)||void 0===n||n.call(e)}return u(e.data),e.viaDashboard&&M()(document).on(Si,A),{reportTitle:t,rows:s,nounSingular:l,nounPluralCapitalised:d,pageToken:a,actionBar:o,addNewPupilLink:i,running:r,more:function(){e.invoke({pageToken:a()},r,u)},dispose:function(){e.viaDashboard&&M()(document).off(Si,A)}}},template:'\n <div class="assist-report">\n <div class="report-title" data-bind="text: reportTitle"></div>\n {{#if rows().length === 0 }}\n <div class="report-section">\n <user-doc>\n <p>{{nounPluralCapitalised}} who are marked as having left appear here.</p>\n </user-doc>\n </div>\n {{/if}}\n {{#if rows().length > 0}}\n <div class="report-section">\n <table>\n <thead>\n <tr>\n <th>Name</th>\n <th>Registration Group</th>\n <th>Local Authority</th>\n <th>School</th>\n <th>Date of Birth</th>\n <th>Last Day</th>\n <th></th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n \x3c!-- ko foreach: rows --\x3e\n <tr>\n <td data-bind="text: name"></td>\n <td data-bind="text: className"></td>\n <td data-bind="text: laName"></td>\n <td data-bind="text: mainSchoolName"></td>\n <td data-bind="text: dateOfBirth"></td>\n <td data-bind="text: leftOn"></td>\n <td>\n \x3c!-- ko if: $data.markAsLeftOrCurrentLink --\x3e\n <assist-link params= "assistLink: markAsLeftOrCurrentLink"></assist-link>\n \x3c!-- /ko --\x3e\n </td>\n <td><assist-link params= "assistLink: editLink"></assist-link></td>\n </tr>\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n <more-link params="hasMore: pageToken, running: running, more: more"></more-link>\n </div>\n {{/if}}\n <div class="report-appendix">\n {{#if actionBar}}\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n {{/if}}\n {{#if rows().length != 0 }}\n <div class="report-footnotes">\n <span>\n {{nounPluralCapitalised}} marked as having left can be made current again within 30 days of their\n leaving date. If a {{nounSingular}} who has left returns for another placement,\n <assist-link params="utterance: {text: addNewPupilLink.utteranceText}">\n add them again as a new {{nounSingular}}.\n </assist-link>\n </span>\n </div>\n {{/if}}\n </div>\n </div>\n '}),p().components.register("data-capture-welcome",{viewModel:function(e){return{nodes:M()(e.data),refreshPupilList:function(e,n){var t;null==n||null===(t=n.preventDefault)||void 0===t||t.call(n),Ii()}}},template:"{{#template {nodes: nodes}}}{{/template}}"});var Ei=t(27196),Ni=t.p+"a5422757378d184d1697.png",Fi=t.p+"ec78646e2f11bfddd739.png";p().components.register("editable-forward-register-grid",{viewModel:function(e){var n=e.cache,t=e.weeksEditLinks,o=p().pureComputed(function(){return O.isAlternativeProvision()&&O.school().addOns.registers}),i=new Ei.vX(n,"forward"),a=[];return a.push(n.to.subscribeBeforeAndAfter(function(e,n){e&&n&&n&&n.isAfter(e)&&i.addRows(e.plusDays(1))})),{grid:i,dispose:function(){c.Ay.each(a,function(e){return e.dispose()})},weeksEditLinks:t,marksControlledByStudybugs:o}},template:'\n <table>\n <thead>\n <tr>\n <th rowspan="2">Week Commencing</th>\n \x3c!-- ko foreach: grid.rows()[0].days --\x3e\n \x3c!-- ko ifnot: isHidden --\x3e\n <th colspan="2" data-bind="css: {today: isToday}">{{date.format("ddd")}}</th>\n \x3c!-- /ko --\x3e\n \x3c!-- /ko --\x3e\n </tr>\n <tr class="slotNames">\n \x3c!-- ko foreach: grid.rows()[0].days --\x3e\n \x3c!-- ko ifnot: isHidden --\x3e\n \x3c!-- ko foreach: sessions --\x3e\n <th>{{slotName.toUpperCase()}}</th>\n \x3c!-- /ko --\x3e\n \x3c!-- /ko --\x3e\n \x3c!-- /ko --\x3e\n </tr>\n </thead>\n <tbody>\n \x3c!-- ko foreach: grid.rows --\x3e\n <tr data-bind="css: {thisWeek: days[0].isThisWeek}">\n <th>{{days[0].date.format("D MMM YYYY")}}</th>\n \x3c!-- ko foreach: days --\x3e\n \x3c!-- ko ifnot: isHidden --\x3e\n \x3c!-- ko foreach: sessions --\x3e\n <td>\n \x3c!-- ko if: link --\x3e\n {{#let { $marksControlledByStudybugs: $component.marksControlledByStudybugs } }}\n <assist-link class="markOuter"\n params="utterance: {text: link.utteranceText},\n invocable: link.invocable,\n caretPosition: link.caretPosition">\n <register-mark params="code: entries[0]?.code,\n slotName: slotName,\n history: entries,\n withApMarkRendering: true,\n marksControlledByStudybugs: $marksControlledByStudybugs"></register-mark>\n </assist-link>\n {{/let}}\n \x3c!-- /ko --\x3e\n \x3c!-- ko ifnot: link --\x3e\n <register-mark params="code: entries[0]?.code,\n slotName: slotName,\n history: entries,\n withApMarkRendering: true,\n marksControlledByStudybugs: $component.marksControlledByStudybugs"></register-mark>\n \x3c!-- /ko --\x3e\n </td>\n \x3c!-- /ko --\x3e\n \x3c!-- /ko --\x3e\n \x3c!-- /ko --\x3e\n <td class="editLink">\n \x3c!-- ko if: $parent.weeksEditLinks()[$index()].assistLink &&\n $parent.weeksEditLinks()[$index()].assistLink.label == "Mark Not Required" --\x3e\n <sp
1an class="editLinkArrow">â </span>\n <assist-link params="utterance: {text:$parent.weeksEditLinks()[$index()].assistLink.utteranceText}">\n Change<img class="editLinkImg" src="'.concat(Ni,'" alt="Required session"/>\n to<img class="editLinkImg" src="').concat(Fi,'" alt="Not a required session"/>\n </assist-link>\n \x3c!-- /ko --\x3e\n \x3c!-- ko if: $parent.weeksEditLinks()[$index()].assistLink &&\n $parent.weeksEditLinks()[$index()].assistLink.label == "Mark Required" --\x3e\n <span class="editLinkArrow">â </span>\n <assist-link params="utterance: {text:$parent.weeksEditLinks()[$index()].assistLink.utteranceText}">\n Change<img class="editLinkImg" src="').concat(Fi,'" alt="Not a required session"/>\n to<img class="editLinkImg" src="').concat(Ni,'" alt="Required session"/>\n </assist-link>\n \x3c!-- /ko --\x3e\n \x3c!-- ko if: !$parent.weeksEditLinks()[$index()].assistLink &&\n $parent.weeksEditLinks()[$index()].helperMessage --\x3e\n <span class="editLinkMessage" data-bind="text: $parent.weeksEditLinks()[$index()].helperMessage"></span>\n \x3c!-- /ko --\x3e\n </td>\n </tr>\n \x3c!-- /ko --\x3e\n </tbody>\n </table>')}),p().components.register("pupil-required-sessions",{viewModel:function(e){var n=p().observable(e.data.pageToken),t=p().observable(!1),o=e.data.pupilName,i=e.data.showPupilAssistLink,a=e.data.actionBar;e.data.requiredSessionsChanged&&Ii();var s=p().observableArray(e.data.editableRegisterGrid.weeksEditLinks),r=new ri.e;function M(e){n(e.pageToken),r.merge(e.editableRegisterGrid),s(e.editableRegisterGrid.weeksEditLinks)}return M(e.data),{cache:r,lastPageToken:n,running:t,more:function(){e.invoke({pageToken:n()},t,M)},showPupilAssistLink:i,actionBar:a,pupilName:o,weeksEditLinks:s}},template:'\n <div class="assist-report">\n <table>\n <tr>\n <td>\n <div class="report-title">Required Sessions</div>\n <div class="report-subtitle">\n for <assist-link params="assistLink: showPupilAssistLink"></assist-link>, from this week onwards\n </div>\n </td>\n <td class="key2">\n Click to toggle between<img class="sessionImg" src="'.concat(Fi,'" alt="Not a required session"/>\n and<img class="sessionImg" src="').concat(Ni,'" alt="Required session"/>\n </td>\n </tr>\n </tr>\n </table>\n <div class="report-section">\n <editable-forward-register-grid params="cache: cache,\n weeksEditLinks: weeksEditLinks">\n </editable-forward-register-grid>\n <more-link params="hasMore: lastPageToken, running: running, more: more"></more-link>\n </div>\n {{#if actionBar}}\n <div class="report-appendix">\n <renderer-action-bar params="data: actionBar"></renderer-action-bar>\n </div>\n {{/if}}\n </div>')});t(97926);(0,t(47395).Jp)(/Give me a button .*/);var Ri=t(53040);function Di(){var e=M()(document.activeElement);return e.is("input")&&!e.is("input[type='submit']")&&!e.is("input[type='checkbox']")||e.is("textarea")||e.is("[contenteditable='true']")}t(81148),t(28692),t(19190),t(2143),t(88666),t(6741);function Bi(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function ji(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?Bi(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Bi(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}var $i="Minutes late",Ui={"code:missing":"Select a mark!","notes:tooLong":"Notes too long","minsLate:wrongCode":"".concat($i," specified with wrong attendance code"),"minsLate:tooBig":"".concat($i," too big"),"minsLate:tooSmall":"".concat($i," must be positive!"),"minsLate:fraction":"".concat($i," must be a whole number"),"minsLate:invalid":"".concat($i," must be a number!"),"text:missing":"Message mustnât be blank","text:tooLong":"Message too long"};s.util.validationFailureCodes=ji(ji({},s.util.validationFailureCodes),Ui);var Hi=function(e){if(null==e)return"missing"},Vi=function(e){if(e.text()&&e.text().length>8192)return"tooLong"},Gi=function(e){return function(n){var t,o=n.text();if(o){if(!M().isNumeric(o))return"invalid";if(n.val()<0)return"tooSmall";if((t=o)>>>0!==parseFloat(t))return"fraction";if(n.val()>300)return"tooBig";var i=e.value();
1if(n.val()&&i&&20!=i.code&&120!=i.code)return"wrongCode"}}},zi=function(){};function Yi(e,n,t,o){return _i.apply(this,arguments)}function _i(){return _i=(0,o.A)(a().mark(function e(n,t,o,i){var s,r,M,l;return a().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(s=c.Ay.map(n.rows(),function(e){return e.pupilId}),r=t.length&&c.Ay.difference(t,s).length,M=t.length&&(!n.sessions.length||n.to().isBefore(o)||n.from().isAfter(i)),!r&&!M){e.next=2;break}return l=new Promise(function(e){y.getRegisterGrid(O.school().id,o,i,t,function(t){n.merge(t),e()})}),e.next=1,l;case 1:return e.abrupt("return",e.sent);case 2:case"end":return e.stop()}},e)})),_i.apply(this,arguments)}t(68176),t(510);function Ki(e){return function(n,t){0===n.length?t([]):y.getPupils(O.school().id,n,function(n){var o=c.Ay.filter(n,function(n){return!c.Ay.contains(e(),n.id)});t(o)})}}p().components.register("re-pupil-row",{viewModel:function(e){var n=e.field,t=e.remove,o=e.registerGridCache,i=e.marks,a=e.inConfirmMode,s=e.onEditInConfirmMode,r=e.from,M=e.isOnlyRow,l=e.withApMarkRendering,d=e.marksControlledByStudybugs,u=c.Ay.map([0,1,2,3,4],function(e){function t(e,t){var r=p().pureComputed(function(){var i;return o.getEntries(null===(i=n.value())||void 0===i?void 0:i.id,e,t)}),M=p().observable().extend({rateLimit:100});return{slotName:t,code:p().pureComputed(function(){var e;return null===(e=r()[0])||void 0===e?void 0:e.code}),isSel:p().pureComputed(function(){var o,a=null===(o=n.value())||void 0===o?void 0:o.id;return i.isSelected(a,e,t)}),entries:r,toggle:function(){a()&&s();var o=n.value().id,r=i.isSelected(o,e,t);i.setIsSelected(o,e,t,!r)},hovered:M,mouseenter:function(){return M(!0)},mouseleave:function(){return M(!1)}}}return{sessions:p().pureComputed(function(){var n=r().plusDays(e);return[t(n,"am"),t(n,"pm")]})}}),A=p().pureComputed(function(){return u[0].sessions()[0].entries()});var q=p().pureComputed(function(){var e=!(n.data.text()||"").trim();return!(M()&&e||a())});return{field:n,query:e.query,itemAsText:function(e){if(e)return"".concat(e.name)+(e.className?", ".concat(e.className):"")},toggleHover:function(){n.data.mouseIsOverMarks(!n.data.mouseIsOverMarks())},days:u,gridIsFetched:A,inConfirmMode:a,removeEnabled:q,remove:t,marksTooltipVisible:!1,withApMarkRendering:l,marksControlledByStudybugs:d}},template:'\n <a class="remove" href="#" data-bind="click: remove, if: removeEnabled">\n <svg height="14" width="14">\n <circle fill="#999" cx="7" cy="7" r="6.5"></circle>\n <rect x="3.5" y="6.5" fill="#fff" width="7" height="1.5"></rect>\n </svg>\n </a>\n <div class="textInput">\n <div class="dots"></div>\n {{#let {text: field.data.text}}}\n <div class="autocomplete pupil"\n data-bind="autocomplete: {query: query, text: text, selectedItem: field.value,\n itemAsText: itemAsText, hasFocus: field.hasFocus, disabled: inConfirmMode}">\n <span class="name"\n data-bind="highlight: {text: name,\n terms: text().split(\' \')}"></span><span data-bind="if: $data.className">,\n <span class="className"\n data-bind="highlight: {text: className, terms: text().split(\' \')}"></span></span>\n </div>\n {{/let}}\n </div>\n {{#if field.value}}\n {{#if gridIsFetched}}\n <table class="marks">\n <tr data-bind="foreach: days, event: {mouseenter: toggleHover, mouseleave: toggleHover}">\n \x3c!-- ko foreach: sessions --\x3e\n <td>\n <a href="#" class="markOuter"\n data-bind="click: toggle,\n css: {sel: isSel},\n event: {mouseenter: mouseenter, mouseleave: mouseleave}">\n <register-mark params="code: code, slotName: slotName,\n history: entries, ttDisable: !hovered(), ttOpen: true,\n withApMarkRendering: $component.withApMarkRendering,\n marksControlledByStudybugs: $component.marksControlledByStudybugs\n "></register-mark>\n </a>\n </td>\n \x3c!-- /ko --\x3e\n </tr>\n </table>\n <div data-bind="tooltip: {position: \'below\', open: field.data.marksTooltipVisible}"\n class="marksTt">Select the marks youâd like to change</div>\n {{/if}}\n {{#ifnot gridIsFetched}}\n <spinner class="marksPrompt dark"></spinner>\n {{/ifnot}}\n {{/if}}
1\n {{#ifnot field.value}}\n <span class="marksPrompt">Select a pupil to see marks</span>\n {{/ifnot}}\n {{#ifnot field.validationSuspended}}\n <span class="error" data-bind="ifnot: field.isValid">{{field.validationMessage}}</span>\n {{/ifnot}}'});p().components.register("re-pupil-grid",{viewModel:function(e){var n=e.fields,t=e.registerGridCache,o=e.marks,i=e.inConfirmMode,a=e.seedValues,s=e.onEditInConfirmMode,r=e.withApMarkRendering,l=e.marksControlledByStudybugs,d=p().observable(),u=p().observable(),A=p().pureComputed(function(){return u().format("DD MMM YYYY")});u(m.y.now().withFirstDayOfWeek());var q=p().pureComputed(function(){return u().plusDays(5)});var f=[];f.push(q.subscribe(function(e){var o=c.Ay.map(n(),function(e){return e.value().id});Yi(t,o,u(),e)}));var h=p().pureComputed(function(){var e=u(),t=m.y.now();return c.Ay.map([0,1,2,3,4],function(a){var r=e.plusDays(a);function M(e){return function(){i()&&s();var t=c.Ay.filter(n(),function(e){return e.value()}),a=c.Ay.find(t,function(n){return c.Ay.find(e,function(e){return!o.isSelected(n.value().id,r,e)})});c.Ay.each(t,function(n){c.Ay.each(e,function(e){o.setIsSelected(n.value().id,r,e,a)})})}}return{day:r.format("ddd"),sessions:[{slotName:"AM",select:M(["am"])},{slotName:"PM",select:M(["pm"])}],isToday:r.equals(t),select:M(["am","pm"])}})}),W=p().pureComputed(function(){return c.Ay.compact(c.Ay.map(n(),function(e){var n;return null===(n=e.value())||void 0===n?void 0:n.id}))});function g(e){if(!e||!c.Ay.find(n(),function(n){return n.value().id===e.id})){var a=new Ye._I("pupil",zi,e);return a.data.marksTooltipVisible=p().pureComputed(function(){var e=n()||[],t=c.Ay.last(e)===a,s=(null==e?void 0:e.length)>10,r=c.Ay.find(e,function(e){return e.data.mouseIsOverMarks()});return!i()&&!d()&&t&&!o.selected().length&&!r&&!s}).extend({rateLimit:300}),a.data.mouseIsOverMarks=p().observable(),a.data.text=p().observable(""),n.push(a),f.push(a.value.subscribe(function(e){e&&o.clearForPupil(e.id)},null,"beforeChange")),f.push(a.value.subscribe(function(e){e&&Yi(t,[null==e?void 0:e.id],u(),q())})),a}}function v(){var e=g();window.setTimeout(function(){return e.hasFocus(!0)},100)}function b(e){if(null!=e&&e.items.length){d(!0),c.Ay.each(e.items,function(e){return g(e.pupil)});var n=c.Ay.compact(c.Ay.map(e.items,function(e){return e.date})),i=c.Ay.isEmpty(n)?m.y.now():c.Ay.min(n,function(e){return e.toEpochDay()});u(i.withFirstDayOfWeek());var a=c.Ay.map(e.items,function(e){return e.pupil.id});Yi(t,a,u(),q()).then(function(){c.Ay.each(e.items,function(e){e.date&&o.setIsSelected(e.pupil.id,e.date,e.slotName,!0)}),d(!1)})}}function y(){t.clear(),Yi(t,W(),u(),q())}return f.push(a.subscribe(b)),b(a()),n().length||v(),Yi(t,W(),u(),q()),M()(document).on("postedToRegister",y),{fields:n,registerGridCache:t,marks:o,goToPrevWeek:function(){u(u().minusWeeks(1))},goToNextWeek:function(){u(u().plusWeeks(1))},from:u,weekText:A,days:h,addPupilAndSetFocus:v,removePupil:function(e){var t;o.clearForPupil(null===(t=e.value())||void 0===t?void 0:t.id),1===n().length?(e.data.text(""),window.setTimeout(function(){return e.hasFocus(!0)},100)):n.remove(e)},inConfirmMode:i,onEditInConfirmMode:s,query:Ki(W),withApMarkRendering:r,marksControlledByStudybugs:l,dispose:function(){c.Ay.each(f,function(e){return e.dispose()}),M()(document).off("postedToRegister",y)}}},template:'\n <span class="label">Pupil</span>\n {{#foreach fields}}\n <re-pupil-row params="field: $data, registerGridCache: $parent.registerGridCache, from: $parent.from,\n query: $parent.query, remove: function() { $parent.removePupil($data) },\n isOnlyRow: $parent.fields().length === 1, inConfirmMode: $parent.inConfirmMode,\n marks: $parent.marks, onEditInConfirmMode: $parent.onEditInConfirmMode,\n withApMarkRendering: $parent.withApMarkRendering,\n marksControlledByStudybugs: $parent.marksControlledByStudybugs"></re-pupil-row>\n {{/foreach}}\n <div class="sessions-hdr">\n <div class="week-hdr">\n <a class="prev" href="#" data-bind="click: goToPrevWeek">\n <svg viewBox="0 0 8 11">\n <polygon points="0,5.5 8,0 8,11 "/>\n </svg>\n </a>
1\n <span class="week">Week Commencing {{weekText}}</span>\n <a class="next" href="#" data-bind="click: goToNextWeek">\n <svg viewBox="0 0 8 11">\n <polygon points="8,5.5 0,11 0,0 "/>\n </svg>\n </a>\n </div>\n <div data-bind="foreach: days">\x3c!--\n --\x3e<div class="day" data-bind="css: {today: isToday}">\x3c!--\n --\x3e<a href="#" data-bind="click: select, text: day" class="dayLabel"></a>\x3c!--\n --\x3e<div data-bind="foreach: sessions">\x3c!--\n --\x3e<a href="#" data-bind="click: select, text: slotName.toUpperCase()" class="slotName"></a>\x3c!--\n --\x3e</div>\x3c!--\n --\x3e</div>\x3c!--\n --\x3e</div>\n </div>\n <a href="#" data-bind="click: addPupilAndSetFocus, ifnot: inConfirmMode">Add Another</a>'}),p().components.register("register-editor",{viewModel:function(e){var n,t,o,i,a,s,r=e.school,l={isOpen:e.isOpen,seedValues:e.seedValues,editCountAmTodayOn:p().observable(0),editingAmToday:p().observable(!1),editDates:p().observableArray(),showLunchTip:!1,lunchTipData:{},showHelpPageLink:!r().isAlternativeProvision,withApMarkRendering:r().isAlternativeProvision,marksControlledByStudybugs:r().isAlternativeProvision},d=r().addOns.registers,u=[];l.registerGridCache=new ri.e,l.pupilFields=p().observableArray(),l.codeField=new Ye._I("code",Hi),l.minsLateField=function(){var e={val:p().observable(),text:p().observable(),keep:p().observable()};u.push(e.text.subscribe(function(n){e.val(parseInt(n)||null)}));var n=p().pureComputed(function(){return e.val(),e.keep(),e}),t=new Ye._I("minsLate",Gi(l.codeField),n);return t.click=function(){e.keep()&&(e.keep(!1),t.hasFocus(!0))},t}(),l.notesField=(n={text:p().observable(),keep:p().observable()},t=p().pureComputed(function(){return n.text(),n.keep(),n}),(o=new Ye._I("notes",Vi,t)).click=function(){n.keep()&&(n.keep(!1),o.hasFocus(!0))},o),l.marks=(i=p().observable({}),a=function(e,n,t){return"".concat(e,":").concat(n,":").concat(t)},{isSelected:function(e,n,t){var o;return null===(o=i()[a(e,n,t)])||void 0===o?void 0:o.isSel},setIsSelected:function(e,n,t,o){if("am"==t){var s=m.y.now();if(n.equals(s)||n.isAfter(s)){var M=o?1:-1,d=l.editCountAmTodayOn()+M;if(l.editCountAmTodayOn(d),n.equals(s))l.editingAmToday(o);else if(o){l.editDates().push(n);var u=l.editDates().sort();l.editDates(u)}else{var A=l.editDates().filter(function(e){return!e.equals(n)});l.editDates(A)}}}var p=i()[a(e,n,t)];if(p||(p=i()[a(e,n,t)]={isSel:o,pupilId:e,date:n,slotName:t,getCurrentRegisterEntry:function(){return c.Ay.first(l.registerGridCache.getEntries(e,n,t))}}),o){var q=p.getCurrentRegisterEntry();r().isAlternativeProvision&&q?p.isSel=q.code!==Tt.A.notYetAdmitted:p.isSel=o}else p.isSel=o;i.valueHasMutated()},selected:s=p().pureComputed(function(){var e=c.Ay.values(i());return c.Ay.filter(e,function(e){return e.isSel})}),hasSelected:p().pureComputed(function(){var e;return null===(e=s())||void 0===e?void 0:e.length}),selectionText:p().pureComputed(function(){var e,n=null===(e=s())||void 0===e?void 0:e.length;return"".concat(n||"No"," mark").concat(1===n?"":"s"," selected")}),clear:function(){return i({})},clearForPupil:function(e){var n=c.Ay.omit(i(),function(n){return n.pupilId===e});i(n)}}),l.codes=p().pureComputed(function(){var e=c.Ay.uniq(l.marks.selected().map(function(e){return e.date}).sort()),n=e.length?e[0]:m.y.now(),t=e.length?e[e.length-1]:m.y.now();return c.Ay.chain(Tt.A.codes).values().filter(function(e){return e.wasOrIsValidForEstablishment(r())}).map(function(e){var o={codesToShow:p().pureComputed(function(){if(10===e.code){var n=c.Ay.uniq(c.Ay.map(l.marks.selected(),function(e){return e.slotName})),t=c.Ay.sortBy(n,function(e){return e});return c.Ay.map(t,function(n){return{slotName:n,code:e.code}})}return[{slotName:"am",code:e.code}]}),labelToShow:p().pureComputed(function(){if(r().isAlternativeProvision){if(e.labelForAps)return e.labelForAps;if(e.renderAsNotRequiredForAps)return"Not required to attend (".concat(e.label,")")}return e.label}),isValidOnDate:e.isValidOnDate,isValidForDateRange:e.isValidForRange(n.toMoment().toDate(),t.toMoment().toDate(),r()),notesRequiredOnDate:e.notesRequiredOnDate,withApMarkRendering:l.withApMarkRendering&&e.code===Tt.A.dualRegistration};return c.Ay.extend(o,e)}).filter(function(e){var n;return"sims"!==(null===(n=fe())||void 0===n||null===(n=n.mis)||void 0===n?void 0:n.id)||!e.cantBePostedToSims}).filter(function(e){return e.isValidForDateRange}).sortBy(function(e){return e.sortOrder}
1).value()}),u.push(l.marks.selected.subscribeBeforeAndAfter(function(e,n){if(0===e.length&&n.length){var t=n[0].getCurrentRegisterEntry(),o=c.Ay.find(l.codes(),function(e){return e.code===(null==t?void 0:t.code)});if(l.codeField.value(o),void 0===l.notesField.value().text()){var i=null==t?void 0:t.notes;l.notesField.value().text(i),l.notesField.origText=i}var a=null==t?void 0:t.minutesLate;l.minsLateField.value().text(a),l.minsLateField.origText=a}e.length<2&&2===n.length?(l.notesField.value().text()===l.notesField.origText&&l.notesField.value().keep(!0),l.minsLateField.value().text()===l.minsLateField.origText&&l.minsLateField.value().keep(!0)):2===e.length&&n.length<2&&(l.notesField.value().keep(!1),l.minsLateField.value().keep(!1))})),l.notesField.keepIsEnabled=p().pureComputed(function(){return l.marks.selected().length>1}),l.minsLateField.keepIsEnabled=p().pureComputed(function(){return l.marks.selected().length>1}),l.minsLateField.isActive=p().pureComputed(function(){var e,n=null===(e=l.codeField.value())||void 0===e?void 0:e.code;return 20===n||120===n}),l.notesHeader=p().pureComputed(function(){var e=l.codeField.value();return l.marks.selected().find(function(n){return null==e?void 0:e.notesRequiredOnDate(n.date.toMoment().toDate())})?"Notes (Required)":"Notes"});var A=p().pureComputed(function(){var e=l.pupilFields().concat([l.codeField,l.notesField]);return l.minsLateField.isActive()?e.concat([l.minsLateField]):e});function q(e){e?M()(document).on("keypress.regpost.codes",function(e){if(!Di()){var n={};c.Ay.each(l.codes(),function(e){10===e.code?(n["/"]=e,n["\\"]=e):n[e.mark()]||(n[e.mark()]=e)});var t=n[String.fromCharCode(e.which).toUpperCase()];t&&(l.codeField.value(t),l.minsLateField.isActive()?l.minsLateField.hasFocus(!0):l.notesField.hasFocus(!0),e.preventDefault())}}):M()(document).off("keypress.regpost.codes")}function f(e){void 0!==(null==e?void 0:e.notes)&&(l.notesField.value().keep(!1),l.notesField.value().text(e.notes))}return l.submit=function(){if(l.inConfirmMode())l.isOpen(!1);else{var e;if(l.shouldShowSetLunchTip().show)l.showLunchTip=!0,l.lunchTipData={pupilId:null===(e=l.pupilFields()[0].value())||void 0===e?void 0:e.id,forToday:l.shouldShowSetLunchTip().forToday,forDate:l.shouldShowSetLunchTip().forDate};else l.showLunchTip=!1,l.lunchTipData={};l.editCountAmTodayOn(0),l.editingAmToday(!1),l.editDates([]);var n=l.codeField.value();if(l.marks.selected().find(function(e){var t=!n.isValidOnDate(e.date.toMoment().toDate(),r());if(t){var o=e.date.toMoment().format(Et.Bp.LONG_DATE);l.postError("The â".concat(n.mark(),"â mark canât be used for ").concat(o))}return t}))return;if(r().isAlternativeProvision&&l.marks.selected().find(function(e){var n=e.getCurrentRegisterEntry();if((null==n?void 0:n.code)===Tt.A.notYetAdmitted)return 1===l.marks.selected().length?l.postError("Cannot change the mark for a session before a child was admitted"):l.postError("Selected marks include a session before a child was admitted which cannot be changed"),!0}))return;var t={snapshots:c.Ay.map(l.marks.selected(),function(e){return{pupilId:e.pupilId,date:e.date.toString(),slotName:e.slotName,snapshot:(n=e.getCurrentRegisterEntry(),{code:(null==n?void 0:n.code)||Tt.A.noMark,minutesLate:null==n?void 0:n.minutesLate,notes:null==n?void 0:n.notes})};var n}),code:n.code};if(l.minsLateField.isActive()&&(l.minsLateField.keepIsEnabled()&&l.minsLateField.value().keep()?t.keepPreviousMinsLate=!0:t.minutesLate=l.minsLateField.value().val()),l.notesField.keepIsEnabled()&&l.notesField.value().keep()?t.keepPreviousNotes=!0:t.notes=l.notesField.value().text(),!(t.notes||t.keepPreviousNotes&&t.snapshots.every(function(e){return e.snapshot.notes})))if(l.marks.selected().find(function(e){var t=n.notesRequiredOnDate(e.date.toMoment().toDate());return t&&l.postError("You must enter explanatory notes along with the â".concat(n.mark(),"â mark.")),t}))return;l.postSuccess(null),l.postError(null),y.postToRegister(r().id,t,l.isPosting,function(e){var n=c.Ay.filter(e,function(e){return e.success});n.length&&l.postSuccess("".concat(n.length," mark").concat(1===n.length?"":"s"," posted"));var t=c.Ay.chain(e).filter(function(e){return e.failures}).map(function(e){return c.Ay.map(e.failures,function(e){return e.code})}
1).value(),o=["unchanged","snapshotChanged","overwriteNotAllowed","pupilNotFound"],i=c.Ay.filter(t,function(e){return c.Ay.contains(e,o[0])}),a=c.Ay.filter(t,function(e){return c.Ay.contains(e,o[1])}),s=c.Ay.filter(t,function(e){return c.Ay.contains(e,o[2])}),r=c.Ay.filter(t,function(e){return c.Ay.contains(e,o[3])}),d=c.Ay.filter(t,function(e){return c.Ay.difference(e,o).length}),u=[];if(i.length){var A=1===e.length?"M":"".concat(i.length," m");u.push("".concat(A,"ark").concat(1===i.length?" is unchanged so has":"s are unchanged so have"," not been posted."))}if(a.length){var p=1===e.length?"M":"".concat(a.length," m");u.push("".concat(p,"ark").concat(1===a.length?" was":"s were"," changed while you were editing.")+"<br>Please check the changes and try again.")}if(s.length){var q=1===e.length?"M":"".concat(s.length," m"),f=1===s.length?" overwrites an existing mark":"s overwrite existing marks",h=1===s.length?"has":"have";u.push("".concat(q,"ark").concat(f," which is not supported by ").concat(ge()," so ").concat(h," not been posted."))}if(r.length){var W=1===e.length?"Mark has":"".concat(r.length," marks have");u.push("".concat(W," not been posted as the pupil couldnât be found."))}if(d.length){var g=1===e.length?"Mark has":"".concat(d.length," marks have");u.push("".concat(g," not been posted."))}u.length&&l.postError(c.Ay.reduceRight(u,function(e,n){return"".concat(e,"<br>").concat(n)})),c.Ay.each(n,function(e){l.marks.setIsSelected(e.pupilId,new m.y(e.date),e.slotName,!1)}),u.length&&l.pupilFields.remove(function(e){var n,t=null===(n=e.value())||void 0===n?void 0:n.id;return!c.Ay.find(l.marks.selected(),function(e){return e.pupilId===t})}),M()(document).trigger("postedToRegister",[n])},function(e){var n="Please try again.",t=M().parseJSON(e.responseText);null!=t.failures?(new Ye.qW(A())().processValidationResponse(t.failures),l.postError(n)):l.postError("Sorry, something went wrong posting to the register. ".concat(n));return!1})}},l.isPosting=p().observable(),l.postSuccess=p().observable(),l.postError=p().observable(),l.postIsEnabled=p().pureComputed(function(){return 0===c.Ay.filter(A(),function(e){return!e.isValid()}).length&&!l.isPosting()}),l.inConfirmMode=p().pureComputed(function(){return l.postSuccess()&&!l.postError()}),l.continueEditing=function(){return l.postSuccess(null)},l.atLeastOnePupilChosen=p().pureComputed(function(){var e;return l.pupilFields().length&&(null===(e=l.pupilFields()[0].value())||void 0===e?void 0:e.id)}),l.shouldShowSetLunchTip=p().pureComputed(function(){var e;return d?{show:1===l.pupilFields().length&&(null===(e=l.pupilFields()[0].value())||void 0===e?void 0:e.id)&&l.editCountAmTodayOn()>0,forToday:l.editingAmToday(),forDate:l.editDates()[0]}:{show:!1}}),l.editAClass=function(){M()(document).trigger("selectUtterance",[{text:"Edit the register for ",caretPosition:22}]),l.isOpen(!1)},l.setLunchChoice=function(e){var n,t=e.pupilId,o=e.forToday,i=e.forDate;if(o)n="Set todayâs lunch choice for {pupil:".concat(t,"} to ");else{var a=i.toMoment().format(Et.Bp.UTTERANCE_DATE_PARAM);n="Set the lunch choice for {pupil:".concat(t,"} on ").concat(a," to ")}var s={text:n,caretPosition:n.length};M()(document).trigger("selectUtterance",[s]),l.isOpen(!1)},l.cancel=function(){return l.isOpen(!1)},u.push(l.isOpen.subscribe(q)),q(l.isOpen()),l.helpPageAttendanceCodes=window.s.m.schoolPath("help/attendance/codes"),u.push(l.seedValues.subscribe(f)),f(l.seedValues()),l.dispose=function(){return u.forEach(function(e){return e.dispose()})},l},template:'\n <form data-bind="submit: submit">\n <ul data-bind="css: {confirmMode: inConfirmMode}">\n <li class="pupils">\n <re-pupil-grid params="fields: pupilFields, registerGridCache: registerGridCache, marks: marks,\n inConfirmMode: inConfirmMode, seedValues: seedValues,\n onEditInConfirmMode: continueEditing,\n withApMarkRendering: withApMarkRendering,\n marksControlledByStudybugs: marksControlledByStudybugs"></re-pupil-grid>\n </li>\n {{#ifnot atLeastOnePupilChosen}}\n <p class="tip singleLine">
1\n <span class="tipBody">\n Want to edit a whole class?\n <a data-bind="click: editAClass">Thereâs an Assistant command for that.</a>\n </span>\n </p>\n {{/ifnot}}\n {{#if marks.hasSelected}}\n '.concat('\n <li>\n <div class="selMarks">\n <a href="#" data-bind="click: marks.clear"><i data-bind="html: s.m.schoolIcons.clear"></i></a>\n <span data-bind="text: marks.selectionText"></span>\n </div>\n </li>\n <li class="newMarkRow">\n <div class="newMark">\n <span class="label">Change To</span>\n <sw-picker params="items: codes, selectedItem: codeField.value, placeholder: \'Select a Mark\'">\n {{#foreach codesToShow}}\n {{#if $index}}<span class="or">or</span>{{/if}}\n <register-mark params="code: code, slotName: slotName, ttDisable: true,\n withApMarkRendering: $parent.withApMarkRendering"></register-mark>\x3c!--\n --\x3e{{/ foreach}}\x3c!--\n --\x3e<span class="markLabel" data-bind="text: labelToShow"></span>\n </sw-picker>\n {{#if showHelpPageLink}}\n <a href="{{helpPageAttendanceCodes}}" target="_blank" class="codesHelp">How to use attendance codes</a>\n {{/if}}\n </div>\n {{#if minsLateField.isActive}}\n <div class="arrived">\n <span class="label">Arrived</span>\n <div class="minsLateLine">\n <div class="textInput" data-bind="click: minsLateField.click">\n <div class="dots"></div>\n <input type="text" spellcheck="false"\n data-bind="textInput: minsLateField.value().text,\n hasFocus: minsLateField.hasFocus,\n disable: minsLateField.value().keep">\n </div><span>minutes late</span>\n </div>\n <div data-bind="if: minsLateField.keepIsEnabled">\n <div class="keep">\n <input type="checkbox" data-bind="checked: minsLateField.value().keep"><span>Donât change</span>\n </div>\n </div>\n </div>\n {{/if}}\n </li>\n <li class="codeMinsLateMsgs">\n <span data-bind="ifnot: codeField.validationSuspended">\n <span class="error" data-bind="ifnot: codeField.isValid">\n {{codeField.validationMessage}}\n </span>\n </span>\n {{#if minsLateField.isActive}}\n <span data-bind="ifnot: minsLateField.validationSuspended">\n <span class="error" data-bind="ifnot: minsLateField.isValid">\n {{minsLateField.validationMessage}}\n </span>\n </span>\n {{/if}}\n </li>\n <li class="notes">\n <span class="label">{{notesHeader}}</span>\n <div data-bind="click: notesField.click">\n <textarea data-bind="textInput: notesField.value().text, hasFocus: notesField.hasFocus,\n disable: notesField.value().keep, correctMouseScroll: {},\n autosize: notesField.value().text"></textarea>\n </div>\n <div data-bind="if: notesField.keepIsEnabled">\n <div class="keep">\n <input type="checkbox" data-bind="checked: notesField.value().keep"><span>Donât change</span>\n </div>\n </div>\n <span data-bind="ifnot: notesField.validationSuspended">\n <span class="error" data-bind="ifnot: notesField.isValid">\n {{notesField.validationMessage}}\n </span>\n </span>\n </li>','\n <li class="buttonRow">\n <button class="button button-primary" data-bind="\n enable: postIsEnabled,\n css: { posting: isPosting },\n attr: { \'aria-label\': isPosting() ? \'Posting\' : \'Post\', \'aria-busy\': isPosting }">\n <span data-bind="if: isPosting"><spinner></spinner></span>
1\n <span data-bind="ifnot: isPosting">Post</span>\n </button>\n <a class="button button-secondary" href="#" data-bind="click: cancel">Cancel</a>\n </li>\n {{/if}}\n {{#if postSuccess() || postError() || inConfirmMode()}}\n <li class="postMsgs">\n <span data-bind="if: postSuccess">\n <p class="postMsg" data-bind="html: postSuccess"></p>\n </span>\n <span data-bind="if: postError">\n <p class="postMsg postError" data-bind="html: postError"></p>\n </span>\n <div class="buttonRow" data-bind="if: inConfirmMode">\n <button class="button button-primary" data-bind="hasFocus: true">Done</button>\n <a href="#" data-bind="click: continueEditing">Make More Changes</a>\n </div>\n {{#if showLunchTip}}\n <p class="tip singleLine">\n <span class="tipBody">\n You can set also\n <a data-bind="click: function(){ setLunchChoice(lunchTipData); }">set a lunch choice.</a>\n </span>\n </p>\n {{/if}}\n </li>\n {{/if}}\n </ul>\n </form>')}),p().components.register("post-to-register",{viewModel:function(e){var n=e.school,t=p().observable(),o=p().observable(),i=p().observable();M()(document).on("keypress.regpost",function(e){var o,i,a,s=((null===(o=n())||void 0===o||null===(o=o.addOns)||void 0===o?void 0:o.dataCapture)&&(null===(i=n())||void 0===i||null===(i=i.addOns)||void 0===i?void 0:i.registers)||(null===(a=n())||void 0===a||null===(a=a.addOns)||void 0===a?void 0:a.attendance))&&!ve()&&!Di()&&!t(),r=114===e.keyCode&&!(e.ctrlKey||e.altKey||e.metaKey);s&&r&&t(!0)}),M()(document).on("editRegisters",function(e,n){i(n),t(!0)});var a=t.subscribe(function(e){e||i(void 0)});return{isOpen:t,isVisible:o,school:n,seedValues:i,dispose:function(){M()(document).off("keypress.regpost"),M()(document).off("editRegisters"),a.dispose()}}},template:'\n <div class="postToRegister"\n data-bind="popover: {dim: true, isModal: true, noLabel: true, open: isOpen, isVisible: isVisible}">\n <div class="popoverTitle">Post to Register</div>\n <div class="body">\n {{#if isVisible}}\n <register-editor params="school: school, isOpen: isOpen, seedValues: seedValues"></register-editor>\n {{/if}}\n </div>\n </div>'});var Ji=t(21375),Xi=y.schoolAPIPath;function Qi(e,n,t){f.A.get({url:"".concat(Xi(e),"/staff/search").concat((0,h.yD)(n)),success:t})}var Zi=t(19759);function ea(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function na(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?ea(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ea(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}t(9691);function ta(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function oa(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?ta(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ta(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}var ia=p().observable({}),aa=p().pureComputed(function(){var e,n=O.school();return null!==(e=ia()[n.id])&&void 0!==e?e:!n.showGetStartedTab});function sa(e){var n=O.school(),t=ia();ia(oa(oa({},t),{},{[n.id]:e}))}var ra=p().observable(),Ma=p().observable(),ca=p().observable(!1).extend({notify:"always"});function la(e){var n=e.section,t=e.label,o=e.iconHtml,i=e.tooltipText,a=e.decoratorValue,s=e.condition,r=e.subPath,M=p().pureComputed(function(){return O.schoolPath(n+(null!=r?r:""))}),l=p().pureComputed(function(){var e=O.school(),t=!s||s();if(e)return c.Ay.contains(e.sections,n)&&t});return new Vn.G(M,l,t,o,i,a)}var da=[la({section:"dashboard",iconHtml:Yn.Hy.collection,tooltipText:"Dashboard",subPath:"/0"}),la({section:"messages",iconHtml:qt,tooltipText:"Messages",decoratorValue:O.unread}),la({section:"calendar",iconHtml:'\n <svg class="calendar" xmlns="http://www.w3.org/2000/svg" xml:space="preserve" fill-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="2" clip-rule="evenodd" viewBox="0 0 15.3 17.3">\n <path d="M1.6 17q-.6 0-1.1-.5T0 15.4v-12q0-.6.5-1t1.1-.5h1.2V0h1.4v1.9H11V0h1.4v1.9h1.2q.7 0 1.2.4t.4 1.2v11.9q0 .6-.4 1.1t-1.2.5zm0-1.3h12l.1-.1V7H1.4v8.4zm-.3-10h12.5V3.5l-.1-.2H1.4v2.4m0 0V3.2zm6.3 4.7q-.4 0-.6-.2l-.2-.6q0-.3.2-.5t.6-.3.5.3.2.5-.2.6zm-3.6 0-.6-.2-.2-.6q0-.3.2-.5l.6-.3.6.3.2.5-.2.6zm7.1 0q-.3 0-.5-.2l-.3-.6q0-.3.3-.5t.5-.3l.6.3.2.5-.2.6zm-3.5 3.5q-.4 0-.6-.2l-.2-.6.2-.6.6-.2q.3 0 .5.2t.2.6-.2.6zm-3.6 0-.6-.2-.2-.6.2-.6.6-.2.6.2.2.6-.2.6zm7.1 0q-.3 0-.5-.2l-.3-.6.3-.6.5-.2.6.2.2.6-.2.6z"/>\n </svg>\n ',tooltipText:"Calendar"}),la({section:"getstarted",label:"Get Started",decoratorValue:p().pureComputed(function(){return aa()?0:100}),condition:p().pureComputed(function(){var e;return O.section(),O.school().getStartedFlowHasItems&&(!aa()||(null===(e=window.location.pathname.split("/")[3])||void 0===e?void 0:e.startsWith("getstarted")))})}),la({section:"attendance",label:"Attendance"}),la({section:"registers",label:"Registers"}),la({section:"aps",label:"APs"}),la({section:"intervention",label:"Intervention"}),la({section:"sickmap",label:"Bugs Map"}),la({section:"users",label:"Users",condition:function(){var e;return null===(e=fe())||void 0===e?void 0:e.hasCurrentPupilList}})];p().components.register("school-portal",{viewModel:function(){var e,n,t={};t.syncStatusBarShowing=p().observable().extend({notify:"always"}),t.headerElement=p().observable(),t.headerHeight=ra,t.assistantInputBarHeight=Ma,t.baseApiPath=p().pureComputed(function(){return y.schoolAPIPath(O.school().id)});var o=[],i=function(){var e=window.s.params.uris.main,n=O.school().id;(0,Gn.c)("".concat(e,"school/").concat(n,"/assistant/"))};i(),o.push(O.school.subscribe(i)),t.additionalAssistantSupport=p().pureComputed(function(){return O.isAlternativeProvision()?null:{
1intro:"consult our ",link:"user guide",outro:", or you can ",linkClick:function(){M()(document).trigger("goto",[O.schoolPath("help")])}}}),o.push(p().computed(function(){t.syncStatusBarShowing();var e=t.headerElement();p().tasks.runEarly(),e&&ra(M()(e).height())}));var a=p().pureComputed(function(){var e,n,t=O.school();return(null==t||null===(e=t.addOns)||void 0===e?void 0:e.attendance)||(null==t||null===(n=t.addOns)||void 0===n?void 0:n.dataCapture)}),r=null,l=p().observable(!0);function d(e){var n;null===(n=r)||void 0===n||n.dispose(),a()&&((0,Ji.Hg)(s.m.schoolPath("dashboard/0")),(0,Ji.Ts)(e),r=(0,h.En)(Ji.FH.getDashboard,null,l,function(e){(0,Ji.ze)(e),(0,Ji.u9)(e.id)}))}function u(){O.school().licenceState.accepted?t.viewLicenceOpen(!0):t.acceptLicenceOpen(!0)}d(t.baseApiPath()),o.push(t.baseApiPath.subscribe(function(e){(0,Ji.ze)(null),(0,Ji.u9)(null),d(e)})),t.allowAddToDashboard=p().pureComputed(function(){var e=O.school();return!!(0,Ji.ze)()&&a()&&e.sections.includes("dashboard")}),t.mainMenuItems=da,t.prependedUserMenuItems=p().pureComputed(function(){var e,n=O.school().getStartedFlowHasItems,t=!O.isAlternativeProvision(),o=fe(),i=!(null!=o&&null!==(e=o.mis)&&void 0!==e&&e.isManual);return n||t||i?[{label:"User Guide",iconHtml:ft.userGuide,select:function(){return M()(document).trigger("goto",[O.schoolPath("help")])},divider:!0}]:[]}),t.extraUserMenuItems=p().pureComputed(function(){var e,n=[{label:"Report Your Child Sick",select:function(){return M()(document).trigger("goto",["/report"])},divider:!0}],t=fe();return t&&!1===(null===(e=t.mis)||void 0===e?void 0:e.isManual)&&n.push({label:t.summary,iconHtml:t.syncedOK?'\n <svg viewBox="0 0 17 16" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/">
1\n <path d="M1.5,14c-0.412,0 -0.766,-0.147 -1.059,-0.441c-0.294,-0.294 -0.441,-0.647 -0.441,-1.059l0,-11c0,-0.413 0.147,-0.766 0.441,-1.059c0.294,-0.294 0.647,-0.441 1.059,-0.441l11,0c0.413,0 0.766,0.147 1.059,0.441c0.294,0.294 0.441,0.647 0.441,1.059l0,6l-1.5,0l0,-6l-11,0l-0,11l2,0c0,0.25 0.021,0.503 0.062,0.76c0.042,0.257 0.104,0.503 0.188,0.74l-2.25,0Zm0,-1.5l0,-11l0,11Zm1.5,-1.5l0.729,0c0.208,-0.667 0.542,-1.264 1,-1.792c0.458,-0.528 1,-0.931 1.625,-1.208l-3.354,0l0,3Zm0,-5l3,0l0,-3l-3,0l0,3Zm5.492,10c-0.967,0 -1.791,-0.34 -2.471,-1.021c-0.681,-0.681 -1.021,-1.507 -1.021,-2.479c0,-0.972 0.34,-1.799 1.021,-2.479c0.681,-0.681 1.504,-1.021 2.471,-1.021l1.758,0l0,1.5l-1.75,0c-0.55,0 -1.021,0.196 -1.413,0.588c-0.392,0.392 -0.587,0.862 -0.587,1.412c0,0.55 0.196,1.021 0.587,1.413c0.392,0.392 0.863,0.587 1.413,0.587l1.75,0l0,1.5l-1.758,0Zm-0.492,-10l3,0l0,-3l-3,0l0,3Zm0.75,7.25l0,-1.5l4.5,0l0,1.5l-4.5,0Zm3,2.75l0,-1.5l1.75,0c0.55,0 1.021,-0.196 1.412,-0.587c0.392,-0.392 0.588,-0.863 0.588,-1.413c0,-0.55 -0.196,-1.021 -0.588,-1.412c-0.392,-0.392 -0.863,-0.588 -1.412,-0.588l-1.75,0l0,-1.5l1.758,0c0.967,0 1.791,0.34 2.471,1.02c0.681,0.68 1.021,1.51 1.021,2.49c0,0.965 -0.34,1.788 -1.021,2.469c-0.681,0.681 -1.504,1.021 -2.471,1.021l-1.758,0Z" />\n </svg>\n':'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z"/></svg>',select:function(){}}),O.isAlternativeProvision()||n.push({label:"Add-Ons",select:function(){return M()(document).trigger("goto",[O.schoolPath("add-ons")])},divider:!0}),n}),t.licenceUrl=p().pureComputed(function(){var e,n=(null===(e=O.school())||void 0===e?void 0:e.id)||"";return"/f/s/licence?schoolid=".concat(n)}),t.licencePromptRequired=p().pureComputed(function(){return O.school().licenceState.promptToAccept}),t.acceptLicenceOpen=p().observable(t.licencePromptRequired()&&(Qn||!O.school().showAnnouncement())),t.viewLicenceOpen=p().observable(),Qn||O.school().showAnnouncement.subscribe(function(e){!e&&t.licencePromptRequired()&&t.acceptLicenceOpen(!0)}),t.licenceAccepted=p().computed({read:function(){return O.school().licenceState.accepted},write:function(e){O.school().licenceState.accepted=e}}),o.push(t.licenceAccepted),M()(document).on("openLicence",u),"licence"===(0,D.$)("view")&&u();var A,q,m,f,W,g=p().observable((null!==(e=null===(n=O.user())||void 0===n?void 0:n.orgs)&&void 0!==e?e:[]).find(function(e){var n;return e.urlName==(null===(n=O.school())||void 0===n?void 0:n.id)}));return o.push(g.subscribe(function(e){var n,t=(null!==(n=O.mySchools())&&void 0!==n?n:[]).find(function(n){return e.urlName==n.id});t&&O.school(t)})),t.selectedOrg=g,t.schoolIcon=p().pureComputed(function(){return O.school().iconUrl}),o.push((A=p().pureComputed(function(){var e=O.school();return function(n,t){return y.getPupils(e.id,n,function(e){t(e.map(function(e){return na(na({},e),{},{type:dt.L.pupil,pupilId:e.id,id:dt.L.pupil+"-"+e.id,displayName:e.name+(e.className?", "+e.className:"")})}))})}}),q=p().pureComputed(function(){var e=O.school();return function(n,t){Qi(e.id,n,function(e){t(e.map(function(e){return na({id:e.userId,type:dt.L.staff,userId:e.userId,staffMembershipId:e.staffMembershipId,name:e.name},e.isLoggedInUser?{isLoggedInUser:!0}:{})}))})}}),m=p().pureComputed(function(){return O.school().timeZone}),f=p().pureComputed(function(){return v(O.school().id)}),W=new Zi.k(f,A,q,m),(0,Zi.G)(W),{dispose:function(){W.dispose()}})),t.globals=O,t.clearSuggestionsStateSubscribable=p().pureComputed(function(){return O.school()}),t.apUsageEnquiryOpen=p().observable(ca()),o.push(ca.subscribe(function(e){e&&t.apUsageEnquiryOpen(e)})),t.apUsageEnquiryMetadata=p().pureComputed(function(){var e=O.school();return{School:e.fullName,"School ID":e.externalId}}),t.dispose=function(){M()(document).off("openLicence",u),c.Ay.each(o,function(e){return e.dispose()})},t},template:'\n {{#if globals.school}}\n <portal-header data-bind="element: headerElement">\n <sync-status-bar params="showing: syncStatusBarShowing"\n data-bind="css: { hidden: !syncStatusBarShowing() }"></sync-status-bar>\n <main-content>\n <org-selection params="selectedOrg: selectedOrg,\n icon: schoolIcon"></org-selection>
1\n <menu-bar>\n <bar-cell class="left">\n <main-menu params="items: mainMenuItems"></main-menu>\n </bar-cell>\n <bar-cell class="right">\n <aux-menu params="extraUserMenuItems: extraUserMenuItems,\n prependedUserMenuItems: prependedUserMenuItems"></aux-menu>\n </bar-cell>\n </menu-bar>\n </main-content>\n </portal-header>\n <licence-accept params="isOpen: acceptLicenceOpen,\n apiPath: baseApiPath,\n licenceUrl: licenceUrl,\n orgName: globals.school().shortName,\n accepted: licenceAccepted"></licence-accept>\n <licence-viewer params="isOpen: viewLicenceOpen,\n apiPath: baseApiPath,\n licenceUrl: licenceUrl"></licence-viewer>\n <post-to-register params="school: globals.school"></post-to-register>\n <fragment-box>\n <sb-announce class="org-announce"></sb-announce>\n <div id="schoolsFragment"></div>\n <ap-manager-enquiry-popup params="isOpen: apUsageEnquiryOpen,\n popoverClass: \'ap-manager-enquiry-schools-portal\',\n showNoApsOption: true,\n metadata: apUsageEnquiryMetadata"></ap-manager-enquiry-popup>\n </fragment-box>\n <sb-assistant params="apiPath: baseApiPath,\n enabled: globals.school().showAssistant,\n headerHeight: headerHeight,\n inputBarHeight: assistantInputBarHeight,\n clearHistory: globals.school,\n dashboardAddEnabled: allowAddToDashboard,\n clearSuggestionsStateSubscribable: clearSuggestionsStateSubscribable,\n additionalSupport: additionalAssistantSupport"></sb-assistant>\n {{/if}}'});var ua={headerHeight:ra,assistantInputBarHeight:Ma},Aa=(t(5746),t(90744),t(3627)),pa=(t(59039),t(84743),t(51415)),qa="(future pupil)",ma=(t(13609),t(82284));var fa={ios:{name:"iOS",minAppVersion:"2.0"},android:{name:"Android",minAppVersion:"2.0"}};p().components.register("msg-participant",{viewModel:function(e){return p().pureComputed(function(){var n=p().unwrap(e.value),t=e.searchTerms,o=n.user&&void 0!==n.user.npref?n.user.npref:n.category.defaultNPref,i=function(){var e=ft.msgStatusTick,t=ft.msgStatusCross,i=c.Ay.map(n.endpoints,function(n){var i=n.app,a={data:n};if(i){var s=fa[i.os.type];a.newEnough=function(e,n){if((0,ma.A)(e)+(0,ma.A)(n)!="stringstring")return!1;for(var t=e.split("."),o=n.split("."),i=0,a=Math.max(t.length,o.length);i<a;i++){if(t[i]&&!o[i]&&parseInt(t[i])>0||parseInt(t[i])>parseInt(o[i]))return 1;if(o[i]&&!t[i]&&parseInt(o[i])>0||parseInt(t[i])<parseInt(o[i]))return-1}return 0}(i.version,s.minAppVersion)>-1,a.cls="app",a.ready=a.newEnough&&n.signedIn&&n.notificationsEnabled&&o,a.ready&&(a.cls+=" ready"),a.icon=ft.mobile,a.bullets=[],a.bullets.push({text:"Has Studybugs ".concat(s.name," app")+(a.newEnough?"":" but needs to upgrade"),cls:a.newEnough?"tick":"cross",icon:a.newEnough?e:t}),a.bullets.push({text:(n.signedIn?"S":"Not s")+"igned in",cls:n.signedIn?"tick":"cross",icon:n.signedIn?e:t}),a.bullets.push({text:"Notifications ".concat(n.notificationsEnabled&&o?"":"not ","enabled"),cls:n.notificationsEnabled&&o?"tick":"cross",icon:n.notificationsEnabled&&o?e:t})}else a.cls="email",o&&(a.cls+=" ready"),a.icon=ft.atSymbol,a.bullets=[{text:n.emailAddress,cls:"tick",icon:e}],o||a.bullets.push({text:"Notifications disabled",cls:"cross",icon:t});return a});return c.Ay.find(n.endpoints,function(e){return e.app})||i.unshift({cls:"app",icon:ft.mobile,bullets:[{text:"Does not have Studybugs app",cls:"cross",icon:t}]}),c.Ay.find(n.endpoints,function(e){return e.emailAddress})||i.push({cls:"email",icon:"<div>@</div>",bullets:[{text:"No email address",cls:"cross",icon:t}]}),i}(),a="",s="",r="",M=null,l=!1;if(!n.groupId){var d=(0,pa.$)(n.name).names[0];if(c.Ay.find(i,function(e){return e.ready}))a="".concat(d," will receive messages instantly via the Studybugs app."),r="appReady",M=ft.mobile;else if(o&&c.Ay.find(i,function(e){return e.data&&e.data.emailAddress})){a="".concat(d," will receive messages by email.");var u="This will include a ",A=" the app.";c.Ay.find(i,function(e){return e.data&&e.data.app})?(u+="reminder to ",s=c.Ay.find(i,function(e){return e.newEnough})?c.Ay.find(i,function(e){return e.data&&e.data.signedIn})?"".concat(u,"enable notifications in").concat(A):"".concat(u,"sign in to").concat(A):"".concat(u,"upgrade and sign in to").concat(A),r="appNotReady",M=ft.mobile):(s="".concat(u," reminder to get").concat(A),r="email",M=ft.atSymbol)}else{if(c.Ay.find(i,function(e){return e.data&&e.data.app}))a="".concat(d," will see messages in the app but will not receive notifications.");else{var q=n.user&&n.user.isDeactivated;a="".concat(d," will not receive messages").concat(q?" as their Studybugs account has been deleted":"","."),l=!0,q&&(i=0)}n.user&&!1===n.user.npref?s="".concat(d," has disabled notifications for category â").concat(n.category.name,"â."):o||(s="Notifications for category â".concat(n.category.name,"â are disabled by default.")),r="alert",M=Gt.Ay.alert}}if(e.alert){var m=e.alert();m&&(a=m.text,s=m.note,r="alert",M=Gt.Ay.alert,i=null)}return{name:n.name,isIndividual:!n.groupId,isGroup:n.groupId,isStaffGroup:n.isStaff,icon:ft[n.groupId?"group":"person"],badgeClass:r,badgeIcon:M,endpoints:i,text:a,note:s,disabled:l,searchTerms:t}})},template:'\n <entity-pill data-bind="css: {group: isGroup, staff: isStaffGroup,\n individual: isIndividual, disabled: disabled,\n hasBadge: badgeIcon}">\n <pill-icon>{{{icon}}}</pill-icon>\n <pill-label><span data-bind="highlight: { text: name, terms: searchTerms }"></pill-label>\n {{#if badgeIcon}}\n <pill-badge class="{{badgeClass}}">{{{badgeIcon}}}</pill-badge>\n {{/if}}\n </entity-pill>
1\n {{#if isIndividual}}\n <div data-bind="tooltip: {position: \'below\'}" class="participant entityPillTT">\n <pill-message>\n <pill-text>{{text}}</pill-text>\n <pill-note>{{note}}</pill-note>\n </pill-message>\n {{#if endpoints}}\n <endpoints data-bind="foreach: endpoints">\n <endpoint class="{{cls}}">\n {{{icon}}}\n <ep-bullets data-bind="foreach: bullets">\n <ep-bullet class="{{cls}}">{{{icon}}}<ep-bullet-label>{{text}}</ep-bullet-label></ep-bullet>\n </ep-bullets>\n </endpoint>\n </endpoints>\n {{/if}}\n </div>\n {{/if}}\n {{#if isStaffGroup}}\n <div data-bind="tooltip: {position: \'below\'}" class="entityPillTT">\n <pill-message>Staff users will see messages if theyâre signed in to Studybugs.</pill-message>\n </div>\n {{/if}}'});var ha=t(31336);function Wa(e){return"imsLoginFailed"===e?"We couldnât log in to ".concat(ge(),"! ")+"Please check Studybugs Sync is configured correctly.":"snapshotChanged"===e?"We found a change had been made in ".concat(ge()," since we last checked, ")+"so we didnât enter this in ".concat(ge(),"."):"pupilNotFoundInIMS"===e||"removedPupil"===e?"We couldnât find this pupil in ".concat(ge(),"."):"failed"===e?"Something went wrong entering this in ".concat(ge(),". Please check Studybugs Sync is configured correctly."):void 0}p().components.register("ims-posting-status",{viewModel:function(e){var n=(0,Vt.oI)(e.status);return{posted:p().pureComputed(function(){var e=n();return!e||"ok"===e}),pending:p().pureComputed(function(){return"pending"===n()}),failedText:p().pureComputed(function(){return Wa(n())})}},template:'{{#if posted}}\n <i class="icon-ok"></i>\n {{/if}}\n {{#if pending}}\n <spinner class="dark"></spinner>\n {{/if}}\n {{#if failedText}}\n <i class="icon-exclamation-sign"></i>\n <div data-bind="tooltip: {position: \'below\'}">\n <span data-bind="text: failedText"></span>\n </div>\n {{/if}}'});var ga={postingToIMSFailedMessage:Wa},va=p().pureComputed(function(){return"Not yet in ".concat(ge())}),ba={treeTemplate:'{{#ifnot $data.isLast}}\n <svg viewBox="0 0 11 38" width="11" height="38">\n <polyline points="0.5,0 0.5,11.5 11,11.5 0.5,11.5 0.5 37.5 "/>\n </svg>\n {{/ifnot}}\n {{#if $data.isLast}}\n <svg viewBox="0 0 11 12" width="11" height="12">\n <polyline points="0.5,0 0.5,11.5 11,11.5 "/>\n </svg>\n {{/if}}',userPostponeText:va,dependentPostponeText:va,notYetInMISTitleCase:p().pureComputed(function(){return"Not Yet in ".concat(ge())}),userRejectionText:"Contact not recognised",dependentRejectionText:"Doesnât go to this school"},ya='{{#if matchInfo}}\n <table class="toMatch">\n <thead>\n <tr>\n <th colspan="2">Studybugs Registration</th>\n </tr>\n </thead>\n <tbody>\n <tr class="user" data-bind="css: {unsel: dependentId}">\n <td class="icon">{{{orgIcons.person}}}</td>\n <td class="people">\n {{#if matchInfo().user.profilePicUrl}}\n <profile-pic>\n <img data-bind="attr: {src: matchInfo().user.profilePicUrl}">\n </profile-pic>\n {{/if}}\n <user-name>{{matchInfo().user.name}}</user-name>\n <div class="email" data-bind="text: matchInfo().user.email ? matchInfo().user.email : \'â\'"></div>\n </td>\n </tr>\n \x3c!-- ko foreach: matchInfo().dependents --\x3e\n <tr class="dependent" data-bind="css: {unsel: unselected}">\n <td class="icon tree">'.concat(ba.treeTemplate,'</td>\n <td class="people">\n <pupil-item>\n <pupil-icon>{{{$component.orgIcons.pupil}}}</pupil-icon>\n {{#if $data.profilePicUrl}}\n <profile-pic>\n <img data-bind="attr: {src: profilePicUrl}">\n </profile-pic>\n {{/if}}\n <pupil-name>{{name}}</pupil-name>\n </pupil-item>\n </td>\n </tr>\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n {{/if}}'),wa='<table>\n <thead>\n <tr>\n <th class="left"></th>\n <th class="middle">\n {{#ifnot dependentId}}\n <input type="text" data-bind="value: contactQuery, valueUpdate: \'afterkeydown\'">\n {{/ifnot}}\n {{#if dependentId}}\n <input type="text" data-bind="value: pupilQuery, valueUpdate: \'afterkeydown\'">\n {{/if}}\n </th>\n <th class="right">\n {{#ifnot dependentId}}\n <input type="text" data-bind="value: pupilQuery, valueUpdate: \'afterkeydown\'">\n {{/ifnot}}\n </th>\n </tr>\n </thead>\n <tbody>\n \x3c!-- ko foreach: potentialMatches --\x3e\n <tr data-bind="css: {sel: $component.selected() == $data},\n click: select">\n <td class="top left">\n {{#ifnot isCurrentMatch}}\n <a>'.concat(ft.radioButton,'</a>\n {{/ifnot}}\n </td>\n <td class="top middle">\n {{#ifnot $component.dependentId}}\n {{{$component.orgIcons.person}}}\n <matchee-name class="name" data-bind="highlight: {text: fullName,\n terms: $component.contactQuery().split(\' \')}"></matchee-name>\n {{#if $data.emails}}\n {{#foreach emails}}\n <div data-bind="highlight: {text: $data, terms: $component.matchInfo().user.email}"></div>\n {{/foreach}}\n {{/if}}\n {{/ifnot}}\n {{#if $component.dependentId}}\n {{{$component.orgIcons.pupil}}}\n <matchee-name>
1\n <span class="name" data-bind="highlight: {text: fullName,\n terms: $component.pupilQuery().split(\' \')}"></span>{{#if $data.className}},\n {{className}}{{/if}}{{#if $data.futurePupil}} ').concat(qa,'{{/if}}\n </matchee-name>\n {{/if}}\n </td>\n <td class="top right unsel relations">\n {{#foreach $data.contactNames}}\n <div>{{{$component.orgIcons.person}}} {{$data}}</div>\n {{/foreach}}\n {{#foreach $data.pupils}}\n <div>{{{$component.orgIcons.pupil}}}\n <span data-bind="highlight: {text: name,\n terms: $component.pupilQuery().split(\' \')}"></span>{{#if $data.className}},\n {{className}}{{/if}}{{#if $data.futurePupil}} ').concat(qa,'{{/if}}</div>\n {{/foreach}}\n </td>\n </tr>\n <tr data-bind="css: {sel: $component.selected() == $data},\n click: select">\n <td class="left bottom"></td>\n <td colspan="2" class="bottom right matched">\n {{#if $data.alreadyMatched}}\n {{#ifnot isCurrentMatch}}{{{$component.schoolIcons.alert}}}{{/ifnot}}\n <span class="already">Already matched with {{alreadyMatched}}</span>\n {{/if}}\n </td>\n </tr>\n \x3c!-- /ko --\x3e\n \x3c!-- ko foreach: otherMatchingOptions --\x3e\n <tr data-bind="css: {sel: $component.selected() == $data.id},\n click: function() { if (!$component.confirming()) $component.selected($data.id) }">\n <td class="left bottom top">\n <a>').concat(ft.radioButton,'</a>\n </td>\n <td colspan="2" class="bottom top right">\n {{$data.text}}\n </td>\n </tr>\n \x3c!-- /ko --\x3e\n </tbody>\n </table>'),ka='<div class="pupilMatcher table">\n {{#ifnot userIdParam}}\n <div class="row">\n <div class="left"></div>\n <div class="middle"></div>\n <div class="right progress" data-bind="css: {unsel: selected}">\n {{progressText}} <a href="#" data-bind="click: skip">Skip to next</a>\n </div>\n </div>\n {{/ifnot}}\n <div class="row">\n <div class="left">'.concat(ya,'</div>\n <div class="middle">\n <div data-bind="ifnot: selected" class="notSel">«</div>\n <div data-bind="if: selected" class="sel">=</div>\n </div>\n <div class="right">\n <div class="which">\n {{#ifnot selected}}\n <p class="q">Who does this <span>{{subject}}</span> match<mis-text> in {{yourMIS}}</mis-text>?</p>\n <p class="explanation">The most likely candidates are below.</p>\n {{#ifnot dependentId}}\n <p class="explanation strong">We recommend calling or emailing the contact to confirm their details\n if youâre unsure.</p>\n {{/ifnot}}\n {{/ifnot}}\n {{#if selected}}\n <div class="confirm">\n <button class="button button-primary" data-bind="click: confirm, disable: confirming">\n Confirm\n </button>\n <span data-bind="style : { visibility : confirming() ? \'hidden\' : \'visible\' }">\n or <a data-bind="click: clear">clear your selection</a></span>\n </div>\n {{/if}}\n </div>\n <div class="ssPupils" data-bind="css: {hasSel: selected, hide: hidePotentialMatches}">\n ').concat(wa,'\n <div class="none" data-bind="ifnot: imsDataLastUpdated() || gettingPotentialMatches()">\n <p>No matches found</p>\n </div>\n <mis-text>\n <div class="showing" data-bind="if: imsDataLastUpdated">\n <p>Data last updated from {{yourMIS}} <span data-bind="timeago: imsDataLastUpdated"></span>.</p>\n </div>\n </mis-text>\n </div>\n </div>\n </div>\n </div>');function xa(){M()(document).trigger("change-alert")}p().components.register("pupil-contact-matcher",{viewModel:{createViewModel:function(e,n){var t=(0,Vt.oI)(e.userId),o=(0,Vt.oI)(e.dependentId),i=(0,Vt.oI)(e.popoverOpen),a=p().observable(
1o());o.subscribe(a);var s,r=p().observable(),l=p().pureComputed(function(){var e=r(),n=a();if(e)return c.Ay.find(e.dependents,function(e){return e.id===n})}),d=p().pureComputed(function(){return a()?"child":"user"}),u=p().observable(""),A=p().observable(""),q=p().observableArray(),m=p().observable(),f=p().observable(),h=[{id:"postpone",text:p().pureComputed(function(){return a()?ba.dependentPostponeText():ba.userPostponeText()})},{id:"reject",text:p().pureComputed(function(){return a()?ba.dependentRejectionText:ba.userRejectionText})}],W=p().observable(),g=p().observable(),v=p().observable(),b=p().observable(0),w=p().observable(0),k=p().observable(),x=p().pureComputed(function(){return"Match ".concat(w()+b()+1," of ").concat(k()+w())});function T(e){var n=e.user;n.profilePicInfo&&(n.profilePicUrl=(0,ht.t)(n.id,n.profilePicInfo,!1,60)),c.Ay.each(e.dependents,function(e){e.profilePicInfo&&(e.profilePicUrl=(0,ht.t)(e.id,e.profilePicInfo,!0,60)),e.unselected=p().pureComputed(function(){return e.id!=a()})});var t=c.Ay.last(e.dependents);t&&(t.isLast=!0)}function S(e){var n=t();if(n){y.getMatchInfo(O.school().id,n,function(n){var t=n.info;if(T(t),e){if(t.user.postponed||t.user.rejected)return void I();if(t.user.matched){var o=c.Ay.find(t.dependents,function(e){return!(e.matched||e.rejected||e.postponed)});if(!o)return void I();a(o.id)}else a(null)}r(t)})}}function C(e){y.getNextMatchRequired(O.school().id,b(),function(n){k(n.numMatchesRequired);var t=n.next;if(t){if(T(t),t.user.rejected||t.user.postponed)return void C();if(t.user.matched){var o=c.Ay.find(t.dependents,function(e){return!(e.matched||e.rejected||e.postponed)});if(!o)return void C();a(o.id)}else a(null);e&&w(w()+1),r(t)}else I()})}function P(){v()||g(null)}function I(){i(!1),p().tasks.runEarly()}function L(){a(o()),u(""),A(""),q.removeAll(),W(null),r(null),g(null),w(0),k(0),b(0)}return r.subscribe(function(e){if(e){f(!0);var n=l();u(n?"":e.user.name);var t=c.Ay.first(e.dependents);A(n?n.name:t?t.name:"")}}),p().computed(function(){u(),A(),r()&&function(){if(i()){P();var e=(new Date).getTime();s=e,a()?y.getSSPupils(O.school().id,A(),u(),m,function(n){if(e===s){var t=n.pupils;c.Ay.each(t,function(e){e.isCurrentMatch=c.Ay.some(e.matchedDependentIds,function(e){return e.id==a()}),e.select=function(){e.isCurrentMatch||v()||g(e)}}),q(t),f(!1),W(n.lastUpdated)}}):y.getSSContacts(O.school().id,u(),A(),r().user.email,m,function(n){if(e===s){var t=n.pupilContactsWithUsers;c.Ay.each(t,function(e){e.id=e.pupilContact.id,e.fullName=e.pupilContact.name,e.emails=e.pupilContact.emails;var n=e.pupilContact.pupils;if(n&&(e.pupils=n,c.Ay.each(n,function(e){e.schoolClass&&(e.className=e.schoolClass.name)})),e.isCurrentMatch=c.Ay.find(e.matchedUsers,function(e){return e.id===r().user.id}),e.matchedUsers.length){var t=c.Ay.map(e.matchedUsers,function(e){return e.id===r().user.id?"this ".concat(d()):e.name+(e.email?" (".concat(e.email,")"):"")});e.alreadyMatched=(0,_e.em)(t)}e.select=function(){e.isCurrentMatch||v()||g(e)}}),q(t),f(!1),W(n.lastUpdated)}})}}()}).extend({rateLimit:200}),O.school.subscribe(L),g.subscribe(function(e){return setTimeout(function(){var t=M()(n.element),o=t.find(".toMatch"),i=t.find(".middle .sel"),a=t.find(".which").offset().top;if(e){var s=t.find(".ssPupils .sel"),r=c.Ay.reduce(s,function(e,n){return e+M()(n).height()},0),l=s.first().offset().top+r/2-a;return o.css("margin-top",l-o.height()/2),i.css("margin-top",l-i.height()/2)}return o.css("margin-top",0),i.css("margin-top",0)},1)}),p().computed(function(){var e=i(),n=t();e&&(n?S():C())}).extend({rateLimit:50}),i.subscribe(function(e){e||L()}),{orgIcons:Yn.Ay,schoolIcons:ft,school:O.school,userIdParam:t,dependentId:a,subject:d,matchInfo:r,selected:g,contactQuery:u,pupilQuery:A,potentialMatches:q,gettingPotentialMatches:m,hidePotentialMatches:f,otherMatchingOptions:h,imsDataLastUpdated:W,progressText:x,confirming:v,clear:P,skip:function(){b(b()+1)},confirm:function(){if(!v()){var e=function(){t()?S(!0):C(!0)};g()===h[0].id?function(e){var n=a(),t=r().user.id,o=n?{dependentId:n}:{userId:t};y.postponeMatch(O.school().id,o,v,function(){M()(document).trigger("matchPostponed",[o]),e()})}(e):g()===h[1].id?function(e){var n=a(),t=r().user.id,o=n?{dependentId:n}:{userId:t};y.rejectMatch(O.school().id,o,v,function(){M()(document).trigger("matchRejected",[o]),e()})}(e):function(e){var n,t=a();n=t?{dependentId:t,parentId:r().user.id,pupilId:g().id}:{userId:r().user.id,contactId:g().id}
1,y.match(O.school().id,n,v,function(o){if(n.fullName=g().fullName,t)n.className=g().className,M()(document).trigger("pupilMatched",[n]);else{n.matchedDependents=o;var i=g().emails;i.length&&(n.primaryEmail=i[0]),M()(document).trigger("contactMatched",[n])}e()})}(e)}}}}},template:ka}),p().components.register("verify",{viewModel:function(e){var n=function(e){return{id:e.id,name:e.name,avatarData:{text:(0,Wt.o)(e.name)[0],imgSrc:e.profilePicInfo?e.profilePicUrl:null,background:(0,Wt.X)(e.id)}}},t=n(e.parent),o=n(e.dependent),i=p().unwrap(e.verified),a=p().observable();return{parent:t,dependent:o,verified:i,popoverOpen:a,markAsVerified:function(e){var n={parentId:t.id,dependentId:o.id,verified:e};y.markAsVerified(n,I.school().id,function(){a(!1),$(document).trigger("verified",[n])})}}},template:'\n <span class="verify" data-bind="popover: {open: popoverOpen, isModal: true, dim: true}">\n <a href="#" class="popoverLabel">{{#template {nodes: $componentTemplateNodes}}}{{/template}}</a>\n <div class="popoverBody">\n {{#if: verified}}\n <div class="popoverTitle">Person Verified</div>\n <div class="body">\n <p>The identity of this person has been verified.</p>\n <table>\n <tr>\n <td class="label">Parent or Guardian</td>\n <td class="field profilePic">\n <sw-avatar class="member" params="data: parent.avatarData"></sw-avatar>\n <span data-bind="text: parent.name"></span>\n </td>\n </tr>\n <tr>\n <td class="label">Email</td>\n <td class="field" data-bind="text: parent.email ? parent.email : \'â\'"></td>\n </tr>\n <tr>\n <td class="label">Child</td>\n <td class="profilePic ill field">\n <sw-avatar class="member" params="data: dependent.avatarData"></sw-avatar>\n <span data-bind="text: dependent.name"></span>\n </td>\n </tr>\n <tr>\n <td class="label">Verified By</td>\n <td class="field" data-bind="text: verified.by"></td>\n </tr>\n <tr>\n <td class="label">Verified At</td>\n <td class="field" data-bind="date: {value: verified.time}"></td>\n </tr>\n <tr>\n <td></td>\n <td><button class="button button-secondary"\n data-bind="click: function() { markAsVerified(false) }">Unverify</button></td>\n </tr>\n </table>\n </div>\n {{/if}}\n {{#ifnot verified}}\n <div class="popoverTitle">Verify Person</div>\n <div class="body">\n <p>This person has not been verified as the parent or guardian of the child below.\n Please check the details below and confirm they correspond with your records.</p>\n <table>\n <tr>\n <td class="label">Child</td>\n <td class="profilePic ill field">\n <sw-avatar class="member" params="data: dependent.avatarData"></sw-avatar>\n <span data-bind="text: dependent.name"></span>\n </td>\n </tr>\n <tr>\n <td class="label">Parent or Guardian</td>\n <td class="field profilePic">\n <sw-avatar class="member" params="data: parent.avatarData"></sw-avatar>\n <span data-bind="text: parent.name"></span>\n </td>\n </tr>\n <tr>\n <td class="label">Email</td>\n <td class="field" data-bind="text: parent.email ? parent.email : \'â\'"></td>\n </tr>\n <tr>\n <td></td>\n <td>\n <button class="button button-primary" data-bind="click: function() { markAsVerified(true) }">\n Verify\n </button>\n </td>\n </tr>\n </table>\n </div>\n {{/if}}\n </div>\n </span>\n '});var Ta=new function(e,n){var t=0;this.decr=function(){--t||n()}
1,this.incr=function(){t++||e()}}(function(){return M()(document).on("postedToRegister",xa)},function(){return M()(document).off("postedToRegister",xa)}),Sa='<ok class="icon-ok"></ok>\n <box-body>Entered in <mis-text></mis-text> <span data-bind="timeago: enteredInSystem"></span>\n by {{enteredByName() || "Studybugs Sync"}}.\n {{#if enteredByName}}\n <a href="#" data-bind="click: function() { markAsEntered(false) }">Reset</a>\n {{/if}}\n </box-body>',Ca='<div data-bind="popover: {isModal: true, dim: true, open: pupilMatcherOpen}">\n <div class="popoverLabel">\n {{#ifnot isPostponedOrRejected}}\n <button class="msgAction button button-secondary">Match Up</button>\n {{/ifnot}}\n {{#if isPostponedOrRejected}}\n <a href="#" class="button button-secondary">Change</a>\n {{/if}}\n </div>\n <div class="popoverBody">\n <div class="popoverTitle">Matching Up</div>\n <pupil-contact-matcher class="body"\n params="userId: msg.sender.user.id,\n dependentId: matcherDepIdParam,\n popoverOpen: pupilMatcherOpen"></pupil-contact-matcher>\n </div>\n </div>',Pa='<text-content params="{text: msg.content.text, searchTerms:searchTerms}"></text-content>\n <absence>{{msg.relatesTo[0].nameAndClass}} reported as off school\n <dayOff data-bind="moment: {value: dateOffSchool, calendar: offSchoolCal}"></dayOff>\n due to illness.</absence>\n <posting>\n <arrow>{{{globals.schoolIcons.absrepArrow}}}</arrow>\n <box>{{#if !globals.school().addOns.attendance && !sender.isDeactivated}}\n <verification>\n {{#if verified}}\n <span>The identity of this reporter has been\n <verify params="dependent: msg.relatesTo[0], parent: sender, verified: verified">verified</verify>.</span>\n {{/if}}\n {{#ifnot verified}}\n <alert-icon>{{{coreIcons.alert}}}</alert-icon>\n <box-body class="notVerified">This reporter has not been verified as the parent or guardian of the child\n theyâre reporting for.\n <verify params="dependent: msg.relatesTo[0], parent: sender, verified: verified">Verify Now</verify></box-body>\n {{/if}}\n </verification>\n {{/if}}'+"{{#ifnot autoEnterInMIS}}\n {{#if enteredInSystem}}\n ".concat(Sa,'\n {{/if}}\n {{#ifnot enteredInSystem}}\n <p>Once youâve entered this in <mis-text></mis-text> then tick it off below.</p>\n <button class="msgAction button button-secondary"\n data-bind="click: function() { markAsEntered(true) }">Tick Off</button>\n {{/if}}\n {{/if}}')+"{{#if autoEnterInMIS}}\n {{#if enteredByName}}\n ".concat(Sa,'\n {{/if}}\n {{#ifnot enteredByName}}\n {{#if showRegisterEntries}}\n <entries-posted>\n <reg-entries data-bind="foreach: entries">\x3c!--\n --\x3e<reg-entry data-bind="click: $component.editEntries">\n <div>\n <div class="slotName">{{data.slotName.toUpperCase()}}</div>\n </div>\n <div>\n <register-mark params="code: displayCode,\n slotName: data.slotName"></register-mark>\n {{#if $data.postedText}}\n <div class="posted" data-bind="text: postedText"></div>\n {{/if}}\n </div>\n {{#if data.info}}\n <edit-overlay>{{{$component.icons.edit}}}</edit-overlay>\n {{/if}}\n </reg-entry>\x3c!--\n --\x3e</reg-entries>\n </entries-posted>\n <entry-actions>\n {{#ifnot syncingRegisters}}\n <a href="#" class="edit" data-bind="click: editEntries">{{{icons.edit}}}<span>Edit Marks</span></a>\n {{/if}}\n <mis-text>\n <posting-msg>\n {{#if syncingRegisters}}\n <spinner class="dark"></spinner> Synchronising registers with {{yourMIS}}â¦\n {{/if}}\n {{#if absRepEntryPending}}\n <spinner class="dark"></spinner> Posting to {{yourMIS}}â¦\n {{/if}}\n {{#if absRepEntriesPosted}}\n {{{icons.tick}}} Posted to {{yourMIS}}\n {{/if}}\n </posting-msg>\n </mis-text>\n </entry-actions>\n {{#if codingExplanation}}\n <entry-coding>\n <alert-icon>{{{coreIcons.alert}}}</alert-icon>\n <box-body>{{codingExplanation}}</box-body>\n </entry-coding>\n {{/if}}\n {{/if}}\n {{#ifnot showRegisterEntries}}\n <alert-icon>{{{coreIcons.alert}}}</alert-icon>\n <box-body>\n {{#if sender.isDeactivated}}\n <error-text>We canât enter this report in <mis-text params="showForSpreadsheet: true"></mis-text> automatically.</error-text>\n <error-expl>The reporterâs Studybugs account has been deleted and we canât match their details with\n <mis-text params="showForSpreadsheet: true"></mis-text>. Youâll need to enter the absence report manually using the âPost to Registerâ\n button below. Once youâve done so, you can tick it off by pressing âTick Offâ.</error-expl>\n <button class="msgAction deactivated" data-bind="click: postToRegister">Post to Register</button>\n <button class="msgAction deactivated" data-bind="click: function() { markAsEntered(true) }">Tick Off</button>\n {{/if}}\n {{#ifnot sender.isDeactivated}}\n {{#ifnot unmatchedText}}\n <error-text>{{postingErrorText}}</error-text>\n {{#if showMatchUpForPostingError}}\n <error-expl>\n You can update the pupil match below and weâll try posting the absence report again.\n </error-expl>\n ').concat(Ca,'\n {{/if}}\n {{#ifnot showMatchUpForPostingError}}\n <error-expl>If this problem canât be resolved, youâll need to enter the absence report\n in <mis-text params="showForSpreadsheet: true"></mis-text> directly.\n Once youâve done so, you can tick it off by pressing the button below.</error-expl>\n <button class="msgAction" data-bind="click: function() { markAsEntered(true) }">Tick Off</button>\n {{/ifnot}}\n {{/if}}\n {{#if unmatchedText}}\n <error-text>{{unmatchedText}}</error-text>\n <error-expl>{{unmatchedExplanation}}</error-expl>\n ').concat(Ca,"\n {{/if}}\n {{/ifnot}}\n </box-body>\n {{/ifnot}}\n {{/if}}\n {{/if}}\n </box>\n </posting>"),Ia={lastDay:"[yesterday]",sameDay:"[today]",nextDay:"[tomorrow]",lastWeek:"ddd D MMM",nextWeek:"ddd D MMM",sameElse:"ddd D MMM YYYY"};p().components.register("msg-absrep",{viewModel:function(e){var n=e.msg,t=n.content,o=e.searchTerms,i=c.Ay.clone(n.sender.user);i.email=t.extraInfo.senderEmail;var a=p().pureComputed(function(){return c.Ay.find(n.sender.user.verified(),function(e){return e.dependentId===n.relatesTo[0].dependentId})}),s=H()(t.dateOffSchool,W.F.dateFormatMomentJs).tz(O.school().timeZone),r=p().pureComputed(function(){var e,n,t,o=fe(),i=null==o?void 0:o.syncedOK,a=null==o||null===(e=o.mis)||void 0===e?void 0:e.supportsRegisterWrite,s=null==o||null===(n=o.mis)||void 0===n?void 0:n.isManual;return i&&(null===(t=O.school())||void 0===t?void 0:t.addOns.attendance)&&(a||s)}),l=n.relatesTo[0].matchStatus,d=p().observable(n.sender.contact),u=p().observable(n.sender.user.isRejected),A=p().observable(n.sender.user.isPostponed),q=p().pureComputed(function(){return d()?n.relatesTo[0].id:null}),f=p().observable(t.extraInfo.enteredInSystem),h=p().observable(t.extraInfo.enteredByName),g=p().observable(t.extraInfo.codingExplanation),v=p().observable(t.extraInfo.postingFailureCode),b=p().observable(t.extraInfo.entries),w=p().pureComputed(function(){return c.Ay.map(b(),function(e){var n,t={data:e};return t.displayCode=null===(n=e.info)||void 0===n||null===(n=n.coding)||void 0===n?void 0:n[0],e.info&&(!e.info.isAbsRepEntry&&e.info.posted&&(t.postedText=new ha.a(e.info.posted).asText(e.info.isAbsRepEntry,ge(),"your MIS")),t.postingToIMSFailed=e.info.isAbsRepEntry&&!c.Ay.contains(["ok","pending"],e.info.imsStatus)),t.isEntry=!0,t})}),k=p().pureComputed(function(){return c.Ay.find(w(),function(e){return!e.data.info})}),x=p().pureComputed(function(){return c.Ay.find(w(),function(e){var n=e.data.info;return n&&n.isAbsRepEntry&&"pending"===n.imsStatus})}),T=p().pureComputed(function(){return c.Ay.every(w(),function(e){var n=e.data.info;return n&&n.isAbsRepEntry&&"ok"===n.imsStatus})}),S=p().pureComputed(function(){var e=c.Ay.find(w(),function(e){return e.postingToIMSFailed});return e?e.data.info.imsStatus:v()}),C=p().pureComputed(function(){return ga.postingToIMSFailedMessage(S())}),P=p().pureComputed(function(){return c.Ay.contains(["removedPupil"],S())&&!!q()}),I=p().pureComputed(function(){var e=l(),n=u(),t=A();return n?"Marked as â".concat(ba.userRejectionText,"â"):t?"Marked as â".concat(ba.userPostponeText(),"â"):"postponed"===e?"Marked as â".concat(ba.dependentPostponeText(),"â"):"pending"===e?"Weâre trying to match up records with ".concat(ge()," right now."):c.Ay.contains(["noMatchFound","noFirstName"],e)?"We need your help!":"rejected"===e?"Marked as â".concat(ba.dependentRejectionText,"â"):void 0}
1),L=p().pureComputed(function(){if(!A()&&!u()&&c.Ay.contains(["noMatchFound","noFirstName"],l()))return"The details provided donât match exactly with your records in ".concat(ge())+", so we need your help to match them up."}),E=p().pureComputed(function(){var e=l();return"postponed"===e||"rejected"===e||A()||u()}),N=p().pureComputed(function(){var e="ok"===l(),n=w().some(function(e){return e.postingToIMSFailed}),t=!!v();return e&&!n&&!t});var F=p().observable();function R(e){if(120===e.typeId)e.messageId===n.id&&(f()!==e.extraInfo.enteredInSystem&&f(e.extraInfo.enteredInSystem),h()!==e.extraInfo.enteredByName&&h(e.extraInfo.enteredByName),g()!==e.extraInfo.codingExplanation&&g(e.extraInfo.codingExplanation),v()!==e.extraInfo.postingFailureCode&&v(e.extraInfo.postingFailureCode),c.Ay.isEqual(b(),e.extraInfo.entries)||b(e.extraInfo.entries))}function D(){v(null),b([{slotName:"am"},{slotName:"pm"}])}function B(e,t){c.Ay.some(n.relatesTo,function(e){return e.dependentId===t.dependentId})&&D()}function j(e,t){if(n.sender.user.id===t.userId){d(!0),u(!1);var o=c.Ay.map(n.relatesTo,function(e){return e.dependentId});c.Ay.isEmpty(c.Ay.intersection(o,t.matchedDependents))||D()}}function $(e,t){n.sender.user.id===e.userId&&(d(!1),A(t),u(!t))}function U(e,n){$(n,!0)}function V(e,n){$(n,!1)}return M()(document).on("change",R),M()(document).on("pupilMatched",B),M()(document).on("contactMatched",j),M()(document).on("matchPostponed",U),M()(document).on("matchRejected",V),Ta.incr(),{globals:O,icons:ft,coreIcons:Gt.Ay,msg:n,sender:i,verified:a,offSchoolCal:Ia,dateOffSchool:s,autoEnterInMIS:r,pupilMatchStatus:l,userRejected:u,matcherDepIdParam:q,enteredInSystem:f,enteredByName:h,codingExplanation:g,entries:w,showRegisterEntries:N,syncingRegisters:k,absRepEntryPending:x,absRepEntriesPosted:T,editEntries:function(e,t){if(!e.isEntry||e.data.info){var o=n.relatesTo[0],i=c.Ay.map(e.isEntry?[e]:w(),function(e){var n;return new wo(o.pupilId,o.name,null===(n=o.class)||void 0===n?void 0:n.name,m.y.from(s),e.data.slotName)});M()(document).trigger("editRegisters",new go(i)),t.stopPropagation()}},postingErrorText:C,showMatchUpForPostingError:P,unmatchedText:I,unmatchedExplanation:L,isPostponedOrRejected:E,pupilMatcherOpen:F,searchTerms:o,markAsEntered:function(e){var t={messageId:n.id,entered:e};y.markAsEntered(t,O.school().id,function(){f(e?new Date:void 0),h(e?O.user().fullName():void 0)})},postToRegister:function(e,n){M()(document).trigger("editRegisters",new go([])),n.stopPropagation()},dispose:function(){M()(document).off("change",R),M()(document).off("pupilMatched",B),M()(document).off("contactMatched",j),M()(document).off("matchPostponed",U),M()(document).off("matchRejected",V),Ta.decr()}}},template:Pa}),p().components.register("msg-sickrep",{template:'<text-content params="{text: msg.content.text, searchTerms:searchTerms}"></text-content>\n <sick>{{msg.relatesTo[0].nameAndClass}} reported as sick (but not off school).</sick>'});t(51015);p().components.register("msg-text",{viewModel:function(e){return e},template:'\n <text-content params="{text: msg.content.text, searchTerms:searchTerms}"></text-content>\x3c!--\n --\x3e<file-items data-bind="foreach: msg.content.files">\x3c!--\n --\x3e<file-item-stored params="item: {\n title: $data.title,\n size: $data.size,\n uploadInfo: $data,\n },\n searchTerms: $component.searchTerms,\n "></file-item-stored>\x3c!--\n --\x3e</file-items>'});var Oa=/\b((http(s)?|ftp):\/\/)?(www\.)?[-a-zA-Z0-9@:%._+~#=]{2,256}\.[a-zA-Z]{2,6}([-a-zA-Z0-9@:%_+.~#?/=&]*)\b/;function La(e){return e.uri.indexOf("@")>=0&&!e.uri.match(/^(mailto|http|ftp).*$/)?e.href="mailto:"+e.uri:e.uri.match(/^(http|ftp).*$/)||(e.href="https://"+e.uri),e}p().components.register("text-content",{viewModel:function(e){var n=(0,Vt.oI)(e.text),t=p().pureComputed(function(){return function(e){for(var n=[],t=e;t.length>0;){var o=t.match(Oa);if(null===o){n.push({text:t});break}var i=o[0],a=t.search(Oa);n.push({text:t.slice(0,a)}),n.push(La({uri:i,href:i})),t=t.slice(a+i.length)}return n}(n()||"")});return{text:n,parsedTextWithLinks:t,searchTerms:e.searchTerms}}
1,template:(0,_e.Zd)('\n {{#if searchTerms?.()?.length}}\n {{#foreach parsedTextWithLinks}}\n {{#if $data.text}}\n <span data-bind="highlight: { text: text, terms: $parent.searchTerms }"></span>\n {{/if}}\n {{#ifnot $data.text}}\n <a href="{{$data.href}}" target="_blank">\n <span data-bind="highlight: { text: uri, terms: $parent.searchTerms }"></span>\n </a>\n {{/if}}\n {{/foreach}}\n {{/if}}\n {{#ifnot searchTerms?.()?.length}}\n {{#foreach parsedTextWithLinks}}\n {{#if $data.text}}\n {{text}}\n {{/if}}\n {{#ifnot $data.text}}\n <a href="{{$data.href}}" target="_blank">{{$data.uri}}</a>\n {{/if}}\n {{/foreach}}\n {{/if}}\n ',!0)});t(79978);var Ea=t(36400);p().components.register("msg-category",{viewModel:function(e){var n=e.category,t=e.isSelected||!0,o=e.onDark,i=p().pureComputed(function(){return(0,Ea.KI)(p().unwrap(n).colour).h}),a=e.category.name.toLowerCase().replaceAll(" ","-");return{category:n,categoryClassName:a,isSelected:t,onDark:o,hue:i}},template:"\n <span data-bind=\"style: {'--hue': hue},\n css: {isSelected: isSelected, onDark: onDark},\n class: categoryClassName\">{{category.name}}</span>"});var Na,Fa='{{#if gettingMessages}}\n <getting class="bgLayer"><spinner class="dark"></spinner></getting>\n {{/if}}\n {{#ifnot gettingMessages()}}\n <row>\n <cell>\n <scroll-pane data-bind="correctMouseScroll: {}">\n <more>\n {{#if gettingPrevious}}<spinner class="dark"></spinner>{{/if}}\n {{#ifnot gettingPrevious}}\n {{#if showPreviousLink}}\n <a class="previous" href="#" data-bind="click: getMessages">Previous Messages</a>\n {{/if}}\n {{#ifnot showPreviousLink}}\n <span class="end">â End â</span>\n {{/if}}\n {{/if}}\n </more>\n <messages data-bind="foreach: {data: messages,\n afterAdd: addMessage, beforeRemove: removeMessage,\n afterRender: focusReplyBox}">\n <message>\n {{#with postToRegister}}\n {{#if showMenuItem}}\n <msg-menu data-bind="css: {enabled: menuItemEnabled}">\n <a href="#" data-bind="click: click">{{{$component.icons.postToRegister}}}</a>\n </msg-menu>\n <div class="p2rMenuTT" data-bind="tooltip: {position: \'above\'}">\n <div data-bind="css: {enabled: menuItemEnabled}">{{tooltipMessage}}</div>\n </div>\n {{/if}}\n {{/with}}\n <sw-avatar class="member" params="data: sender.avatarData"\n data-bind="css: { isImg: sender.avatarData.imgSrc }"></sw-avatar>\n <sender-line>\n <sender><span data-bind="highlight: {\n text: sender.name,\n terms: $component.searchTerms,\n }"></span>{{#if sender.isGroupMember && sender.user}} (<span data-bind="highlight: {\n text: sender.user.name,\n terms: $component.searchTerms,\n }"></span>){{/if}}</sender>\n <sent>\n <span data-bind="moment: {\n value: sent,\n format: $parent.sentTimeFormat,\n }">\n </span><span data-bind="moment: {\n value: sent,\n calendar: $parent.sentCal,\n searchTerms: $component.searchTerms,\n }"></span>\n </sent>\n </sender-line>\n <content data-bind="css: componentName,\n component: {\n name: componentName,\n params: { msg: $data, searchTerms: $component.searchTerms }\n }"></content>\n {{#if $data.receiptSummary}}\n <receipt-summary>{{receiptsText}}</receipt-summary>\n {{/if}}\n <receipts data-bind="foreach: receipts">\n <receipt>\n <item>\n <name><span data-bind="highlight: {\n text: participant.name,\n terms: $component.searchTerms,\n }"></span></name>\n {{#if pendingNotRead}}<spinner class="dark"></spinner>{{/if}}\n {{#ifnot pendingNotRead}}<tick data-bind="css: tickClass, html: tickHtml"></tick>{{/ifnot}}\n </item>\n <div class="ttReceipt" data-bind="tooltip: {position: \'below\'}">\n {{#if read}}Read <span data-bind="moment: {value: read, calendar: cal}"></span>{{/if}}\n {{#ifnot read}}\n {{#if pendingNotRead}}Notifyingâ¦{{/if}}\n {{#if sent}}Notification sent{{/if}}\n {{#if indeterminate}}\n <ttr1>Unable to confirm notification sent</ttr1>\n {{/if}}\n {{#if failed}}\n <ttr1>Unable to send notification</ttr1>\n {{/if}}\n {{#if disabled}}\n <ttr1>Notifications disabled</ttr1>\n {{/if}}\n {{#if showAppMsg}}\n <ttr2>{{participant.firstName}}\n {{#if indeterminate}}might{{/if}}{{#ifnot indeterminate}}will{{/ifnot}}\n need to open the Studybugs app to pick this up.</ttr2>\n {{/if}}\n {{/if}}\n </div>\n </receipt>\n </receipts>\n </message>\n </messages>\n </scroll-pane>\n <header>\n <header-fields>\n <msg-field>\n <msg-field-label>Category</msg-field-label>\n <msg-field-item data-bind="with: item().category">\n <msg-category params="category: $data"></msg-category>\n </msg-field-item>\n </msg-field>\n <msg-field class="participants">\n <msg-field-label>{{toFieldName}}</msg-field-label>\n <msg-field-item data-bind="foreach: participants">\n <msg-participant params="value: $data, searchTerms: $component.searchTerms"></msg-participant>\n </msg-field-item>\n </msg-field>\n {{#if item().relatesTo.length}}\n <msg-field>\n <msg-field-label>Tagged</msg-field-label>\n <msg-field-item data-bind="foreach: item().relatesTo">\n <msg-relates-to-item>\n <entity-pill>\n <pill-icon>{{{$component.orgIcons.pupil}}}</pill-icon>\n <pill-label>\n <pupil-name><span data-bind="highlight: {\n text: name,\n terms: $component.searchTerms\n }"></span></pupil-name>{{#if $data.class}},\n <class-name><span data-bind="highlight: {\n text: $data.class.name,\n terms: $component.searchTerms\n }"></span></class-name>{{/if}}\n {{#if $data.futurePupil}}<future-pupil>'.concat(qa,'</future-pupil>{{/if}}\n </pill-label>\n </entity-pill>\n </msg-relates-to-item>\n </msg-field-item>\n </msg-field>\n {{/if}}\n {{#if item().subject}}\n <msg-field>\n <msg-field-label>Subject</msg-field-label>\n <msg-field-item>\n <inbox-item-subject>
1\n <span data-bind="highlight: { text: item().subject, terms: $component.searchTerms }"></span>\n </inbox-item-subject>\n </msg-field-item>\n </msg-field>\n {{/if}}\n </header-fields>\n </header>\n </cell>\n </row>\n {{#if item().allowReplies}}\n <row>\n <send>\n <form>\n <button class="button button-primary" data-bind="click: postReply, enable: replyEnabled">Send</button>\n <div data-bind="tooltip: {position: \'above\', enable: replyEnabled}">Keyboard Shortcut:<br><b>Ctrl+Enter</b></div>\n <content-box>\n <textarea data-bind="textInput: textField.value,\n autosize: textField.value,\n event: {autosize.resized: autosizeHandler},\n hasFocus: textField.hasFocus,\n enable: replyBoxEnabled"></textarea>\n {{#if textField.showFailure() && textField.fieldCode() != "missing"}}\n <span class="error" data-bind="text: textField.validationMessage"></span>\n {{/if}}\n </content-box>\n {{#ifnot participantEndpointAvailable}}\n <div data-bind="tooltip: {position: \'above\'}">\n <div>Itâs not possible to send a message as no participants can receive messages.</div>\n </div>\n {{/if}}\n </form>
1\n </send>\n </row>\n {{/if}}\n {{/if}}');p().components.register("inbox-item-detail",{viewModel:{createViewModel:function(e){return Na||(Na=function(e){var n={};n.item=p().observable(),n.isActive=p().observable(),n.sentCal=vt,n.sentTimeFormat=gt,n.participants=p().observableArray(),n.messages=p().observableArray(),n.gettingMessages=p().observable(),n.gettingPrevious=p().observable(),n.showPreviousLink=p().observable();var t=0;n.gettingPrevious.subscribe(function(e){var n;if(e&&(n=M()("scroll-pane")).length)return t=n[0].scrollHeight-n[0].scrollTop}),n.toFieldName=p().pureComputed(function(){var e=n.item();return e&&e.allowReplies?"Participants":"To"}),n.failureCodes={"text:invalidPersonalisation":"Mustnât contain â{â or â}â"},n.textField=new Ye._I("text",bt,""),n.fields=new Ye.qW([n.textField],n.failureCodes),n.postingReply=p().observable(),n.participantEndpointAvailable=p().pureComputed(function(){return c.Ay.find(n.participants(),function(e){return!c.Ay.isEmpty(e.endpoints)})}),n.replyBoxEnabled=p().pureComputed(function(){return!n.postingReply()&&n.participantEndpointAvailable()}),n.replyEnabled=p().pureComputed(function(){return n.textField.isValid()&&!n.postingReply()&&n.replyBoxEnabled()}),n.searchTerms=e;var o=function(e){yt(e);var t=e.user;t&&(c.Ay.each(t.verified,function(e){e.time=new Date(e.time),e.by=e.by||"Studybugs Sync"}),t.verified=p().observableArray(t.verified)),e.groupId||(e.name=e.contact?e.contact.name:e.user.name,e.firstName=(0,pa.$)(e.name).names[0]),e.category=n.item().category},i=function(e){var t=n.participants(),o=n.item();e.componentName="msg-".concat({101:"text",201:"absrep",301:"sickrep",401:"text"}[e.content.typeId]),wt(e.sender,t),e.postToRegister={},e.postToRegister.showMenuItem=p().pureComputed(function(){return O.school().addOns.attendance&&o.relatesTo.length&&201!==e.content.typeId&&!e.sender.school}),e.postToRegister.menuItemEnabled=p().pureComputed(function(){return c.Ay.find(o.relatesTo,function(e){return e.pupilId})}),e.postToRegister.tooltipMessage=p().pureComputed(function(){if(e.postToRegister.menuItemEnabled())return"Post to register";var n=o.relatesTo.length>1?"these children with pupils":"this child with a pupil";return"To post to the register, first match ".concat(n," in ").concat(ge(),".")}),e.postToRegister.click=function(n,t){var i=H()(e.sent).tz(O.school().timeZone),a=c.Ay.flatten(c.Ay.map(o.relatesTo,function(e){if(!e.pupilId)return[];function n(n){var t;return new wo(e.pupilId,e.name,null===(t=e.class)||void 0===t?void 0:t.name,m.y.from(i),n)}return[n("am"),n("pm")]}),!0),s="Via Studybugs at ".concat(i.format("HH:mm")," on ").concat(i.format("D MMM"),": ").concat(e.content.text);a.length&&M()(document).trigger("editRegisters",new go(a,s)),t.stopPropagation()},e.receipts=p().observableArray(c.Ay.map(e.receipts,function(e){return e.participant=c.Ay.find(t,function(n){return n.user&&n.user.id==e.userId||n.contact&&n.contact.id==e.contactId}),e.read=p().observable(e.read),e.notifyState=p().observable(e.notifyState),e.pendingNotRead=p().computed(function(){return c.Ay.contains([void 0,"pending"],e.notifyState())&&!e.read()}),e.sent=p().computed(function(){return"sent"===e.notifyState()}),e.failed=p().computed(function(){return"failed"===e.notifyState()}),e.indeterminate=p().pureComputed(function(){return"indeterminate"===e.notifyState()}),e.disabled=p().pureComputed(function(){return"disabled"===e.notifyState()}),e.showAppMsg=p().pureComputed(function(){return(e.failed()||e.indeterminate()||e.disabled())&&c.Ay.find(e.participant.endpoints,function(e){return e.data&&e.data.app})}),e.tickClass=p().pureComputed(function(){return e.read()?"read":e.notifyState()}),e.tickHtml=p().computed(function(){return e.read()||e.sent()?s.m.schoolIcons.msgStatusTick:s.m.schoolIcons.msgStatusCross}),e.cal=n.sentCal,e})),e.receiptSummary&&(e.receiptSummary=p().observable(e.receiptSummary),e.receiptsText=p().pureComputed(function(){var n=e.receiptSummary(),t=_e.iB,o=n.notifyStates.sent||0,i=n.notifyStates.personalisationFailure||0,a=n.notifyStates.indeterminate||0,s=n.notifyStates.disabled||0,r=n.notifyStates.failed||0,M=n.notifyStates.pending||0,c=o+r+a+s+M,l=n.suppressedGroupParticipants,d="";if((c||void 0===l)&&(d="Sent to ".concat(t(o)," ").concat((0,_e.LS)("contact",o)),r+a+s&&(d+=", another ".concat(t(r+a+s))+" unreachable (unless they check the app)"),M&&(d+=", ".concat(t(M)," pending")),i&&(d+=". ".concat(t(i)," could not be sent as")+" ".concat(i>1?"they":"it")+" had an unresolvable personalisation"),d+="."),void 0!==l){var u=l.reduce(function(e,n){var t=n.suppressedReason.type;return(e[t]=e[t]||[]).push(n),e},{});Object.values(u).forEach(function(e,n){(c||n)&&(d+=" "),d+="Message not sent to the ".concat((0,_e.LS)("group",e.length));var t=e.map(function(e){return'"'.concat(e.groupName,'"')});d+=" ".concat((0,_e.nr)(t)),"staleRegisters"===e[0].suppressedReason.type&&(d+=" since the register data from your MIS is not recent enough for the recipients to be found"),d+="."})}return d})),e.schoolFlag=p().observable(e.schoolFlag),e.relatesTo=o.relatesTo};function a(e){var t=n.item(),a={itemId:t.id,n:6},r=n.messages(),l=n.gettingMessages;r.length&&(a.before=r[0].sent,l=n.gettingPrevious),y.getMessages(s.m.school().id,a,l,function(a){if
1(t&&t===n.item()){n.participants(c.Ay.each(a.participants,o));var s=n.messages();c.Ay.each(a.messages,function(e){i(e);var n=c.Ay.find(s,function(n){return n.id===e.id});n&&(s=c.Ay.without(s,n))}),n.messages(c.Ay.sortBy(s.concat(a.messages),function(e){return e.sent})),M()(document).trigger("change-alert"),n.showPreviousLink(6===a.messages.length),e&&e()}})}n.getMessages=function(){return a()},n.postReply=function(){var e={threadId:n.item().id,content:{typeId:101,text:n.textField.value()}};y.postMessage(s.m.school().id,e,n.postingReply,function(){M()(document).trigger("change-alert"),n.textField.value(""),setTimeout(function(){return n.textField.hasFocus(!0)},1)},function(e){var t=M().parseJSON(e.responseText);if(t.failures)return 0!=n.fields.processValidationResponse(t.failures).length})},M()(document).on("change",function(e){switch(e.typeId){case 100:var t=n.item();if(t&&e.threadId===t.id&&(i(e.msg),!c.Ay.find(n.messages(),function(n){return n.id===e.msg.id}))){var o=n.messages().slice();o.push(e.msg),n.messages(c.Ay.sortBy(o,function(e){return e.sent}))}break;case 110:var a=c.Ay.find(n.messages(),function(n){return n.id===e.messageId});if(a){var s=c.Ay.find(a.receipts(),function(n){return n.userId==e.userId&&n.contactId==e.contactId});s&&(s.read(e.read),s.notifyState(e.notifyState))}break;case 111:var r=c.Ay.find(n.messages(),function(n){return n.id===e.messageId});r&&r.receiptSummary(e);break;case 220:var M=c.Ay.find(n.messages(),function(n){return n.id===e.messageId});M&&M.schoolFlag(e.flag)}}
1),n.messages.subscribeBeforeAndAfter(function(e,n){n.length&&window.setTimeout(function(){var o;r(),(o=M()("scroll-pane")).length&&(e.length?c.Ay.last(e).id===c.Ay.last(n).id?o.scrollTop(o[0].scrollHeight-t):o.animate({scrollTop:o[0].scrollHeight},300):o.scrollTop(o[0].scrollHeight))},1)});var r=function(){var e=M()("inbox-panel").height(),n=M()("row header").outerHeight(),t=M()("row send").outerHeight()||0;M()("inbox-item-detail cell").css("height",e-t);var o=M()("scroll-pane");o.css("max-height",e-(n+t)),o.css("margin-top",n)};function l(e,t){e.dependentId||c.Ay.each(n.messages(),function(n){var o=n.sender.user;o&&o.id===e.userId&&(o.isPostponed=t,o.isRejected=!t,o.contact=void 0)})}return n.autosizeHandler=function(){var e;r(),(e=M()("scroll-pane")).length&&e.scrollTop(e[0].scrollHeight)},n.addMessage=function(e){if(!n.gettingPrevious()&&!n.gettingMessages())return M()(e).hide().slideDown(300)},n.removeMessage=function(e){M()(e).slideUp(300,function(){M()(e).remove()})},n.item.subscribeBeforeAndAfter(function(e,t){(e?e.id:null)!==(t?t.id:null)&&(n.messages([]),n.participants([]),n.textField.reset(),t&&a())}),n.focusReplyBox=function(e,t){t==c.Ay.last(n.messages())&&setTimeout(function(){return n.textField.hasFocus(!0)},100)},n.isActive.subscribe(function(e){e?(window.setTimeout(function(){var e=M()("scroll-pane");e.length&&(r(),e.scrollTop(e[0].scrollHeight))},1),M()(document).on("verified.messages",function(e,t){c.Ay.some(n.item().relatesTo,function(e){return e.dependentId===t.dependentId})&&c.Ay.each(n.messages(),function(e){var n=e.sender.user;if(n&&n.id===t.parentId)if(t.verified)n.verified.push({dependentId:t.dependentId,time:new Date,by:s.m.user().fullName()});else{var o=c.Ay.find(n.verified(),function(e){return e.dependentId==t.dependentId});o&&n.verified.remove(o)}})}),M()(document).on("keydown.messages",function(e){"Enter"===e.key&&e.ctrlKey&&!e.altKey&&!e.metaKey&&n.replyEnabled()&&n.postReply()}),M()(window).on("resize.messages",r)):(M()(document).off("verified.messages"),M()(document).off("keydown.messages"),M()(window).off("resize.messages"))}),n.orgIcons=Yn.Ay,n.icons=ft,M()(document).on("contactMatched",function(e,t){c.Ay.each(n.messages(),function(e){var n=e.sender.user;n&&n.id===t.userId&&(n.isPostponed=!1,n.isRejected=!1,n.contact={id:t.contactId,name:t.fullName})})}),M()(document).on("matchPostponed",function(e,n){l(n,!0)}),M()(document).on("matchRejected",function(e,n){l(n,!1)}),n}(e.searchTerms)),p().computed(function(){Na.item(e.item())}),Na.isActive(!0),Na.dispose=function(){return Na.isActive(!1)},Na}},template:Fa});var Ra=t(38133),Da=t(45445);t(99334);p().bindingHandlers.hasMouseOver={init:function(e,n){M()(e).on("mouseenter",function(){return n()(!0)}),M()(e).on("mouseleave",function(){return n()(!1)})}},p().components.register("to-item",{viewModel:function(e){var n=p().pureComputed(function(){return e.data().item}),t=p().pureComputed(function(){var e=n();if(!e.groupId){if(!e.contact)return{text:"Studybugs user needs to be matched with a contact in ".concat(ge(),"."),note:"We recommend you do this before sending."};if(e.isMissingRelatesTo())return{text:"Contact not related to any pupils in the âTagged Pupilsâ box below.",note:"Check you have the right contact and pupils."}}}),o=p().pureComputed(function(){var e=n();if(e.groupId&&!e.isStaff)return"Show me whoâs in {group:".concat(e.groupId,"}")});return{recipient:n,alert:t,membersUtteranceText:o}},template:'\n {{#if membersUtteranceText}}\n <hover-actions>\n <assist-link params="utterance: {text: membersUtteranceText()},\n invocable: true">Whoâs in this group?</assist-link>\n </hover-actions>\n {{/if}}\n <msg-participant params="value: recipient, alert: alert, "\n data-bind="element: recipient().element,\n hasMouseOver: recipient().hasMouseOver"></msg-participant>'});var Ba=t(29142);p().components.register("to-suggestions",{template:'\n {{#foreach items}}\n <span class="suggestion"\n data-bind="event: {mousedown: select, mouseover: highlight},\n css: {highlighted: highlighted, hasNested: $data.items}">\n {{#ifnot suggestion.children}}\n {{#if suggestion.groupId}}\n <group-match>\n <group-icon>{{{suggestion.schoolIcons.group}}}</group-icon>\n <group-name data-bind="highlight: {text: suggestion.name,\n terms: $component.queryTerms}"></group-name>\n </group-match>\n {{/if}}\n {{#ifnot suggestion.groupId}}\n <pupil-match>\n <item-row>\n <pupil-item>\n <pupil-icon>{{{suggestion.orgIcons.pupil}}}</pupil-icon>\n <pupil-name data-bind="highlight: {text: suggestion.name,\n terms: $component.queryTerms}"></pupil-name>\x3c!--\n --\x3e{{#if suggestion.pupil && suggestion.pupil.class}},\n <class-name data-bind="highlight: {text: suggestion.pupil.class.name,\n terms: $component.queryTerms}"></class-name>{{/if}}\n {{#if suggestion.pupil && suggestion.pupil.futurePupil}}\n <future-pupil>'.concat(qa,'</future-pupil>{{/if}}\n </pupil-item>\n {{#if items.length}}\n <nested-suggestions data-bind="foreach: items">
1\n <span class="suggestion"\n data-bind="event: {mousedown: select, mouseover: highlight},\n mousedownBubble: false, mouseoverBubble: false,\n css: {highlighted: highlighted}">{{suggestion.name}}</span>\n </nested-suggestions>\n {{/if}}\n {{#ifnot items.length}}\n <span class="noContacts">No Contacts</span>\n {{/ifnot}}\n </item-row>\n </pupil-match>\n {{/ifnot}}\n {{/ifnot}}\n {{#if suggestion.children}}\n <div>\n <contact-match>\n <contact-icon>{{{suggestion.orgIcons.person}}}</contact-icon>\n <contact-name data-bind="highlight: {text: suggestion.name,\n terms: $component.queryTerms}"></contact-name>\n </contact-match>\n <contact-rels>Contact for\n {{#foreach suggestion.children}}\n <pupil-item>\n <pupil-icon>{{{$parent.suggestion.orgIcons.pupil}}}</pupil-icon>\n <pupil-name data-bind="text: $data.pupil ? pupil.name : dependents[0].name"></pupil-name>\x3c!--\n --\x3e{{#if $data.pupil && pupil.class}},\n <class-name>{{pupil.class.name}}</class-name>{{/if}}\n </pupil-item>\n {{/foreach}}\n </contact-rels>\n </div>\n {{/if}}\n </span>\n {{/foreach}}\n ').concat((0,Ba.A)(!1,!0))});var ja="Conversations involving multiple pupils mustnât use single pupil personalisation.",$a="This personalisation requires a Studybugs add-on you donât have.",Ua="We didnât have the info available to personalise the message.",Ha="Mustnât contain â{â or â}â",Va="For this category, pupil-related personalisation wonât work with individual recipients";function Ga(e){return e.replace(/\{[^{}]*\}/g,"")}var za={failureCodes:{"to:registerNotFresh":"Register data from your MIS is not recent enough for the correct recipients to be found","to:missing":"Recipient required!","to:illegalParticipant":"Recipient not allowed","to:groupsNotAllowed":"Group recipients not allowed for this category","to:noneCanReceive":"Select a recipient that can receive messages.","to:unrecognisedText":"Unrecognised text","relatesTo:unrecognisedText":"Unrecognised text","subject:missing":"Mustnât be blank","subject:tooLong":"Too long (".concat(40," characters max, excluding personalisation)"),"subject:tooLongPersonalisations":"Too long (".concat(150," characters max, including personalisation)"),"subject:invalidPersonalisation":Ha,"subject:pupilTypeNotResolvable":Va,"subject:moreThanOne":ja,"subject:addOnRequired":$a,"subject:unresolvedPersonalisation":Ua,"text:missing":"Message mustnât be blank","text:tooLong":"Message too long","text:moreThanOne":ja,"text:addOnRequired":$a,"text:invalidPersonalisation":Ha,"text:pupilTypeNotResolvable":Va,"text:unresolvedPersonalisation":Ua,"files:tooMany":"Too many files (".concat(6," max)"),"relatesTo:illegal":"Error finding pupils"},validateTo:function(e,n){return function(t){return n()?"unrecognisedText":t.length?c.Ay.some(t,function(e){return e.groupId||e.user||e.endpoints&&e.endpoints.length})?"none"===e().threading&&e().allowReplies&&c.Ay.some(t,function(e){return e.groupId})?"groupsNotAllowed":void 0:"noneCanReceive":"missing"}},validateRelatesTo:function(e){return function(){if(e())return"unrecognisedText"}},validateSubject:function(e){return e.trim().length?Ga(e).length>40?"tooLong":void 0:"missing"},validateFiles:function(e){if(e.length>6)return"tooMany"},maxFiles:6,subjectMaxLength:40,subjectMaxLengthIncPersonalisation:150,stripPersonalisation:Ga};t(33059);function Ya(e,n){e.id=e.contact?e.contact.id:e.user.id,e.name=e.contact?e.contact.name:e.user.name,c.Ay.each(e.children,function(e){e.id=e.pupil?e.pupil.id:e.dependents[0].pupilshipId}),e.isMissingRelatesTo=p().pureComputed(function(){if(n().length){var t=c.Ay.flatten(c.Ay.map(n(),function(e){return c.Ay.map(e.contacts(),function(e){return e.id})}));return!c.Ay.contains(t,e.id)}})}p().components.register("to-field",{viewModel:function(e){var n=e.field,t=e.category,o=p().pureComputed(function(){var e=t();if(e)return"none"===e.threading&&e.allowReplies}),i=p().pureComputed(function(){return o()?"Participants":"To"}),a=p().pureComputed(function(){var e;return"none"!==(null===(e=t())||void 0===e?void 0:e.threading)}),s=p().pureComputed(function(){return a()?"Group, year group or class (or, contact or pupil name)":"Contact or pupilâs name or class"}),r=p().pureComputed(function(){var e=n.validationMessage();if(e)return o()?e.replace(/(?:(R)|r)ecipie/,function(e,n){return(n?"P":"p")+"articipa"}):e}),l=p().observable();function d(n,o){var i=n.query,a=t();if(a){var s={query:i,categoryId:a.id};y.getRecipients(O.school().id,s,l,function(n){o(function(e,n,t){return c.Ay.each(e.matches,function(e){if(e.groupId)e.id=e.groupId;
1else if(e.dependents||e.pupil){if(e.id=e.pupil?e.pupil.id:e.dependents[0].pupilshipId,e.name=e.pupil?e.pupil.name:e.dependents[0].name,c.Ay.each(e.recipients,function(n){n.children=[e],n.orgIcons=Yn.Ay,n.schoolIcons=ft,Ya(n,t)}),e.suggestions=[],e.recipients.length){var o=c.Ay.filter(e.recipients,function(e){return e.contact&&e.contact.hasParentalResp});o.length&&e.suggestions.push({name:"Parents",recipients:o}),e.suggestions.push({name:"All Contacts",recipients:e.recipients})}}else Ya(e,t);e.orgIcons=Yn.Ay,e.schoolIcons=ft,e.recipients||(e.recipients=[e]),c.Ay.each(e.recipients,function(e){e.category=n(),e.clipboardText=e.name,e.element=p().observable(),e.hasMouseOver=p().observable()})}),e}(n,t,e.relatesTo).matches)})}}function u(e,t){var o=t.recipient;o&&d({query:o},function(e){if(e.length){var t=e[0];t.name==o&&n.value([t])}})}M()(document).on("to-field-init",u);var A=[];return A.push(t.subscribe(function(e){if(e&&!("none"!==e.threading)){var t=c.Ay.filter(n.value(),function(e){return!e.groupId});n.value(t)}})),{field:n,label:i,category:t,placeholderText:s,isGroupMessage:a,getRecipientSuggestions:d,recipientsForSuggestion:function(e){return e.recipients},validationMessage:r,dispose:function(){M()(document).off("to-field-init",u),c.Ay.each(A,function(e){return e.dispose()})}}},template:'\n <msg-field>\n <msg-field-label>{{label}}</msg-field-label>\n <msg-field-item>\n <sw-multi-autocomplete params="query: getRecipientSuggestions,\n selectedItems: field.value,\n hasUnrecognisedText: field.data.hasUnrecognisedText,\n itemsForSuggestion: recipientsForSuggestion,\n textSelectionItemIds: field.data.textSelectionItemIds,\n hasFocus: field.hasFocus,\n extInputsAsText: category() ? category().id : undefined,\n cacheContextId: field.data.cacheContextId,\n suggestionsComponentName: \'to-suggestions\',\n itemComponentName: \'to-item\',\n placeholderText: placeholderText,\n highlightFirst: true"></sw-multi-autocomplete>\n </msg-field-item>\n </msg-field>\n <msg-field-footer>\n <footer-spacer></footer-spacer>\n <footer-body>\n {{#if field.showFailure}}\n <span class="error" data-bind="text: validationMessage"></span>\n {{/if}}\n {{#ifnot field.showFailure}}\n {{#if isGroupMessage}}\n <footer-note>\n <assist-link params="utterance: {text: \'Show me all our messaging groups\'},\n invocable: true">Browse groups</assist-link> or\n <assist-link params="utterance: {text: \'Create a messaging group called \'},\n invocable: false">create a new group</assist-link>.\n </footer-note>\n {{/if}}\n {{/ifnot}}\n </msg-field-footer>'});var _a=function(e){var n=p().observable(),t=za.validateTo(e.value,n),o=new Ye._I("to",t,[]);return o.data.hasUnrecognisedText=n,o.data.cacheContextId=p().observable(1),o.data.textSelectionItemIds=p().observableArray(),o};p().components.register("relates-to-item",{viewModel:function(e){return{data:e.data,orgIcons:Yn.Ay,coreIcons:Gt.Ay}},template:'\n {{#with data().item}}\n <entity-pill data-bind="element: element, hasMouseOver: hasMouseOver,\n css: {hasBadge: hasNoRecipient}">\n <pill-icon>{{{$component.orgIcons.pupil}}}</pill-icon>\n <pill-label>\n <pupil-name>{{name}}</pupil-name>{{#if $data.class}},\n <class-name>{{$data.class.name}}</class-name>{{/if}}\n {{#if $data.futurePupil}}<future-pupil>'.concat(qa,'</future-pupil>{{/if}}\n </pill-label>\n {{#if hasNoRecipient}}\n <pill-badge class="alert">{{{$component.coreIcons.alert}}}</pill-badge>\n {{/if}}\n </entity-pill>\n {{#if hasNoRecipient}}\n <div data-bind="tooltip: {position: \'below\'}" class="entityPillTT">\n <pill-message>\n <pill-text>Thereâs no related contact for this pupil in the âToâ box above.</pill-text>\n <pill-note>Check you have the right pupil and contacts.</pill-note>\n </pill-message>\n </div>\n {{/if}}\n {{/with}}')}),p().components.register("relates-to-suggestions",{viewModel:function(e){return{items:e.items,queryTerms:e.queryTerms,orgIcons:Yn.Ay}},template:'\n {{#foreach items}}
1\n <span class="suggestion"\n data-bind="event: {mousedown: select, mouseover: highlight},\n css: {highlighted: highlighted}">\n <entity-pill>\n <pill-icon>{{{$component.orgIcons.pupil}}}</pill-icon>\n <pill-label>\n <pupil-name data-bind="highlight: {text: suggestion.name,\n terms: $component.queryTerms}"></pupil-name>{{#if suggestion.class}},\n <class-name data-bind="highlight: {text: suggestion.class.name,\n terms: $component.queryTerms}"></class-name>{{/if}}\n {{#if suggestion.futurePupil}}<future-pupil>'.concat(qa,"</future-pupil>{{/if}}\n </pill-label>\n </entity-pill>\n </span>\n {{/foreach}}\n ").concat((0,Ba.A)())});var Ka=void 0;function Ja(e,n){e.clipboardText=e.name+(e.class?", "+e.class.name:""),e.contacts=p().observableArray(),e.hasNoRecipient=p().pureComputed(function(){var t=c.Ay.map(n(),function(e){return e.id}),o=c.Ay.map(e.contacts(),function(e){return e.id});return o.length&&!c.Ay.intersection(t,o).length}),e.element=p().observable(),e.hasMouseOver=p().observable()}p().components.register("relates-to-field",{viewModel:function(e){var n=e.field,t=p().observable();var o=[];return o.push(e.to.subscribe(function(t){var o,i,a,s,r,M,l,d,u=(i=n.value(),a=t,s=e.to,r=c.Ay.compact(c.Ay.map(a,function(e){if("added"===e.status)return e.value})),M=c.Ay.flatten(c.Ay.compact(c.Ay.map(r,function(e){return e.pupil?e.pupil:e.children?c.Ay.flatten(c.Ay.compact(c.Ay.map(e.children,function(e){return e.pupil}))):void 0}))),l=c.Ay.uniq(M,!1,function(e){return e.id}),d=c.Ay.filter(l,function(e){return!c.Ay.find(i,function(n){return n.id===e.id})}),c.Ay.map(d,function(e){var n=c.Ay.clone(e);return n.class=c.Ay.clone(e.class),Ja(n,s),n}));(o=n.value).push.apply(o,(0,Ao.A)(u))},Ka,"arrayChange")),o.push(n.value.subscribe(function(e){var n;n=e,c.Ay.each(n,function(e){"added"===e.status&&y.getContacts(O.school().id,{pupilId:e.value.id},function(n){e.value.contacts(n)})})},Ka,"arrayChange")),{field:n,getRelatesTo:function(n,o){var i={query:n.query};y.getRelatesTo(O.school().id,i,t,function(n){c.Ay.each(n.relatesTo,function(n){n.id=n.pupilId,Ja(n,e.to)}),o(n.relatesTo)})},dispose:function(){c.Ay.each(o,function(e){return e.dispose()})}}},template:"\n <msg-field>\n <msg-field-label>Tagged Pupils</msg-field-label>\n <msg-field-item>\n <sw-multi-autocomplete params=\"query: getRelatesTo,\n selectedItems: field.value,\n hasUnrecognisedText: field.data.hasUnrecognisedText,\n textSelectionItemIds: field.data.textSelectionItemIds,\n hasFocus: field.hasFocus,\n cacheContextId: field.data.cacheContextId,\n suggestionsComponentName: 'relates-to-suggestions',\n itemComponentName: 'relates-to-item',\n placeholderText: 'Pupilâs name or class',\n highlightFirst: true\"></sw-multi-autocomplete>\n </msg-field-item>\n </msg-field>\n <msg-field-footer>\n <footer-spacer></footer-spacer>\n <footer-body>\n <footer-note>Message will appear in activity history for pupils you list here.\n Visible to all participants.</footer-note>\n {{#if field.showFailure}}\n <span class=\"error\" data-bind=\"text: field.validationMessage\"></span>\n {{/if}}\n </footer-body>\n </msg-field-footer>"});var Xa=function(){var e=p().observable(),n=za.validateRelatesTo(e),t=new Ye._I("relatesTo",n,[]);return t.data.hasUnrecognisedText=e,t.data.cacheContextId=p().observable(1),t.data.textSelectionItemIds=p().observableArray(),t};function Qa(e,n,t,o){var i=t.element().getBoundingClientRect(),a=e.getBoundingClientRect(),s=i.left-a.left,r={left:s,right:a.width-s-i.width};return o?r.bottom=a.top-i.top:r.top=i.top-a.top+i.height-1,{label:n,style:r,className:o?"above":"below"}}function Za(e,n,t){(function(e,n){if(n.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,n),n.set(e,t)}function es(e,n){return e.get(ts(e,n))}function ns(e,n,t){return e.set(ts(e,n),t),t}function ts(e,n,t){if("function"==typeof e?e===n:e.has(n))return arguments.length<3?n:t;throw new TypeError("Private element is not present on this object")}p().components.register("relations-overlay",{viewModel:{createViewModel:function(e,n){var t=p().pureComputed(function(){var t,o,i=e.toField.data.textSelectionItemIds(),a=e.relatesToField.data.textSelectionItemIds(),s=c.Ay.find(e.toField.value(),function(e){return e.hasMouseOver()}),r=c.Ay.find(e.relatesToField.value(),function(e){return e.hasMouseOver()});return 1===i.length?t=i[0]:1===a.length?o=a[0]:s?t=s.id:r&&(o=r.id),t?function(e,n,t,o){var i=n.value(),a=c.Ay.find(i,function(n){return n.id===e});if(a){var s=t.value();return c.Ay.compact(c.Ay.map(s,function(e){var n=c.Ay.find(e.contacts(),function(e){return e.id===a.id});if(n){var t=!0===n.hasParentalResp?"Parent of":!1===n.hasParentalResp?"Non-Parent Contact for":"Contact for";return Qa(o,t,e,!0)}}))}}(t,e.toField,e.relatesToField,n.element):o?function(e,n,t,o){var i=t.value(),a=c.Ay.find(i,function(n){return n.id===e});if(a){var s=a.contacts(),r=n.value();return c.Ay.compact(c.Ay.map(r,function(e){var n=c.Ay.find(s,function(n){return n.id===e.id});if(n){var t=!0===n.hasParentalResp?"Parent":!1===n.hasParentalResp?"Non-Parent Contact":"Contact";return Qa(o,t,e,!1)}}))}}(o,e.toField,e.relatesToField,n.element):void 0});return{relations:t}}},template:'\n {{#foreach relations}}\n <relation-label data-bind="style: style" class="{{className}}"><span>{{label}}</span></relation-label>\n {{/foreach}}'});var os=new WeakMap,is=new WeakMap,as=new WeakMap,ss=function(){return(0,j.A)(function e(n){var t=n.hasPreviews,o=n.subject,i=n.text;(0,B.A)(this,e),Za(this,os,void 0),Za(this,is,void 0),Za(this,as,void 0),ns(os,this,t),ns(is,this,o),ns(as,this,i)},[{key:"hasPreviews",get:function(){return es(os,this)}},{key:"subject",get:function(){return es(is,this)}},{key:"text",get:function(){return es(as,this)}},{key:"toJSON",value:function(){return{hasPreviews:es(os,this),subject:es(is,this),text:es(as,this)}}}])}(),rs=t(13482);function Ms(e,n,t){(function(e,n){if(n.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,n),n.set(e,t)}function cs(e,n){return e.get(ds(e,n))}function ls(e,n,t){return e.set(ds(e,n),t),t}function ds(e,n,t){if("function"==typeof e?e===n:e.has(n))return arguments.length<3?n:t;throw new TypeError("Private element is not present on this object")}var us=new WeakMap,As=new WeakMap,ps=new WeakMap,qs=new WeakMap,ms=new WeakMap,fs=function(){return(0,j.A)(function e(n){var t=n.conversation,o=n.announcement,i=n.newsletter,a=n.notice,s=n.parentAlert;(0,B.A)(this,e),Ms(this,us,void 0),Ms(this,As,void 0),Ms(this,ps,void 0),Ms(this,qs,void 0),Ms(this,ms,void 0),ls(us,this,t),ls(As,this,o),ls(ps,this,i),ls(qs,this,a),ls(ms,this,s)}
1,[{key:"conversation",get:function(){return cs(us,this)}},{key:"announcement",get:function(){return cs(As,this)}},{key:"newsletter",get:function(){return cs(ps,this)}},{key:"notice",get:function(){return cs(qs,this)}},{key:"parentAlert",get:function(){return cs(ms,this)}}])}(),hs=new WeakMap,Ws=new WeakMap,gs=new WeakMap,vs=new WeakMap,bs=new WeakMap,ys=new WeakMap,ws=new WeakMap,ks=new WeakMap,xs=new WeakMap,Ts=new WeakMap,Ss=new WeakMap,Cs=function(){return(0,j.A)(function e(n){var t=n.id,o=n.categoryId,i=n.name,a=n.subject,s=n.firstLine,r=n.lastEdited,M=n.isBlank,c=n.categories,l=n.isNoResult,d=n.query,u=n.interventionsUsing;(0,B.A)(this,e),Ms(this,hs,void 0),Ms(this,Ws,void 0),Ms(this,gs,void 0),Ms(this,vs,void 0),Ms(this,bs,void 0),Ms(this,ys,void 0),Ms(this,ws,void 0),Ms(this,ks,void 0),Ms(this,xs,void 0),Ms(this,Ts,void 0),Ms(this,Ss,void 0),ls(hs,this,t),ls(Ws,this,o),ls(gs,this,i),ls(vs,this,a),ls(bs,this,s),ls(ys,this,r),ls(ws,this,M),ls(ks,this,c),ls(xs,this,l),ls(Ts,this,d),ls(Ss,this,u)},[{key:"id",get:function(){return cs(hs,this)}},{key:"categoryId",get:function(){return cs(Ws,this)},set:function(e){ls(Ws,this,e)}},{key:"name",get:function(){return cs(gs,this)}},{key:"subject",get:function(){return cs(vs,this)}},{key:"firstLine",get:function(){return cs(bs,this)}},{key:"lastEdited",get:function(){return cs(ys,this)}},{key:"isBlank",get:function(){return cs(ws,this)}},{key:"categories",get:function(){return cs(ks,this)}},{key:"isNoResult",get:function(){return cs(xs,this)}},{key:"query",get:function(){return cs(Ts,this)}},{key:"interventionsUsing",get:function(){return cs(Ss,this)}},{key:"clipboardText",get:function(){return cs(gs,this)}}])}(),Ps=new WeakMap,Is=new WeakMap,Os=function(){return(0,j.A)(function e(n){var t=n.time,o=n.by;(0,B.A)(this,e),Ms(this,Ps,void 0),Ms(this,Is,void 0),ls(Ps,this,t),ls(Is,this,o)},[{key:"time",get:function(){return cs(Ps,this)}},{key:"by",get:function(){return cs(Is,this)}}])}(),Ls=new WeakMap,Es=function(){return(0,j.A)(function e(n){var t=n.name;(0,B.A)(this,e),Ms(this,Ls,void 0),ls(Ls,this,t)},[{key:"name",get:function(){return cs(Ls,this)}}])}(),Ns=y.schoolAPIPath,Fs="/templates";function Rs(e,n,t,o,i){f.A.post({url:"".concat(Ns(e)).concat(Fs,"/persist"),data:JSON.stringify(n),inProgress:t,success:o,failure:i})}function Ds(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function Bs(e){return new Promise(function(n){var t,o,i;t=O.school().id,o=e,i=function(e){n(c.Ay.map(e.templates,function(e){var n=new Es({name:e.lastEdited.by.name}),t=new Os({time:e.lastEdited.time,by:n});return new Cs({id:e.id,categoryId:e.categoryId,name:e.name,subject:e.subject,firstLine:e.firstLine,lastEdited:t,interventionsUsing:e.interventionsUsing})}))},f.A.get({url:"".concat(Ns(t)).concat(Fs,"/summaries").concat((0,h.yD)(o)),success:i})})}function js(e,n){return new Promise(function(t){var o=function(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?Ds(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Ds(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}({templatename:e},n?{ignoretemplateid:n}:{});!function(e,n,t){f.A.get({url:"".concat(Ns(e)).concat(Fs,"/nameclash").concat((0,h.yD)(n)),success:t})}(O.school().id,o,function(e){e.hasClash?t(e.clashingTemplate):t(void 0)})})}function $s(e){return new Promise(function(n){var t={templateid:e};!function(e,n,t){f.A.get({url:"".concat(Ns(e)).concat(Fs,"/current").concat((0,h.yD)(n)),success:t})}(O.school().id,t,function(e){var t=e.content.files.map(function(e){return new Cn({id:e.id,url:e.url,previewUrl:e.previewUrl,title:e.title,type:e.type,extension:e.extension,size:e.size})}),o=new vn({text:e.content.text,files:t}),i=new hn({id:e.id,versionId:e.versionId,categoryId:e.categoryId,name:e.name,subject:e.subject,content:o,interventionsUsing:e.interventionsUsing});n(i)})})}function Us(e){return new Promise(function(n){var t={templateId:e};!function(e,n,t){f.A.post({url:"".concat(Ns(e)).concat(Fs,"/remove"),data:JSON.stringify(n),success:t})}(O.school().id,t,function(e){n(e)})})}p().components.register("template-item",{viewModel:function(e){return{name:e.data().item.name}},template:"<entity-name>{{name}}</entity-name>"}),p().components.register("msg-template-suggestions",{viewModel:function(e){var n=e.items,t=p().observableArray(),o=p().observable(),i=p().observable(),a=p().observable(!1);var s=ft.blankTemplateDocument,r=ft.templateDocument,M=rs.A.clear,l=1===n().length&&n()[0].suggestion.isBlank;return{items:n,removedItems:t,templateDocumentIcon:r,blankIcon:s,clearIcon:M,moment:H(),onlyBlankSuggestion:l,removeTemplate:function(e,n){
1n.stopPropagation();var s=e.suggestion.id;Us(s).then(function(n){if(n.removed)t.push(s);else{if(!n.isUsedByParentAlert)throw"Unable to remove template.";i(e.suggestion.interventionsUsing);var r="Ask a human: Please remove the parent alerts that are using the"+" message template called â".concat(e.suggestion.name,"â");o(r),a(!0)}})},restoreTemplate:function(e,n){n.stopPropagation();var o=e.suggestion.id;t(c.Ay.without(t(),o));var i={templateId:o};!function(e,n){f.A.post({url:"".concat(Ns(e)).concat(Fs,"/restore"),data:JSON.stringify(n)})}(O.school().id,i)},selectBlankTemplate:function(e,t){c.Ay.find(n(),function(e){return e.suggestion.isBlank}).suggestion.categoryId=e,t()},ignoreBlankMessage:function(e,n){n.stopPropagation()},globals:O,showRemoveError:a,dismissRemoveError:function(){a(!1)},removeUtterance:o,interventionsUsingTemplateToRemove:i,plural:_e.LS,pluralAsSentenceIntegerString:_e.hy}},template:'\n {{#foreach items}}\n {{#if suggestion.isNoResult}}\n <no-matches>There are no templates matching â{{suggestion.query}}â.</no-matches>\n {{/if}}\n {{#if suggestion.isBlank}}\n <span class="suggestion blank-suggestion"\n data-bind="event: {mousedown: $component.ignoreBlankMessage, mouseover: highlight}">\n <template-summary>\n <template-summary-title-row>\n <template-title>\n <template-icon>{{{$component.blankIcon}}}</template-icon>\n <template-name>{{suggestion.name}}</template-name>\n </template-title>\n </template-summary-title-row>\n <template-blank-details>\n <category-choices>\n <a tabindex="0"\n data-bind="event: {mousedown: function(){$component.selectBlankTemplate(suggestion.categories.conversation.id, select); }}">\n Single {{suggestion.categories.conversation.name}}</a>\n or batch\n <a tabindex="0"\n data-bind="event: {mousedown: function(){$component.selectBlankTemplate(suggestion.categories.announcement.id, select); }}">\n {{suggestion.categories.announcement.name}}</a>,\n <a tabindex="0"\n data-bind="event: {mousedown: function(){$component.selectBlankTemplate(suggestion.categories.newsletter.id, select); }}">\n {{suggestion.categories.newsletter.name}}</a>,\n <a tabindex="0"\n data-bind="event: {mousedown: function(){$component.selectBlankTemplate(suggestion.categories.notice.id, select); }}">\n {{suggestion.categories.notice.name}}</a>\n or\n <a tabindex="0"\n data-bind="event: {mousedown: function(){$component.selectBlankTemplate(suggestion.categories.parentAlert.id, select); }}">\n {{suggestion.categories.parentAlert.name}}</a>\n </category-choices>\n </template-blank-details>\n </template-summary>\n {{#if $parent.onlyBlankSuggestion}}\n <initial-message>\n <initial-message-title>Your message templates will appear here.</initial-message-title>\n <initial-message-text>\n Start with a blank message then use the bar at the bottom to turn it into a template which\n can be used by staff at your school.\n </initial-message-text>\n </initial-message>\n {{/if}}\n </span>\n {{/if}}\n {{#ifnot suggestion.isBlank || suggestion.isNoResult}}\n {{#if $component.removedItems().includes(suggestion.id)}}\n <removed-template-row>\n Template removed. \n <removed-template-undo data-bind="event: {mousedown: $component.restoreTemplate}">\n Reinstate\n </removed-template-undo>\n </removed-template-row>\n {{/if}}\n {{#ifnot $component.removedItems().includes(suggestion.id)}}\n <span class="suggestion"\n data-bind="event: {mousedown: select, mouseover: highlight}, css: {highlighted: highlighted}">\n <template-summary>\n <template-summary-title-row>\n <template-title>\n <template-icon>{{{$component.templateDocumentIcon}}}</template-icon>\n <template-name data-bind="highlight: {text: suggestion.name, terms: queryTerms}"></template-name>\n </template-title>\n <remove-template-icon>
1\n <span data-bind="event: {mousedown: $component.removeTemplate}">\n {{{$component.clearIcon}}}\n </span>\n <div data-bind="tooltip: {position: \'above\', mouseOpenDelay: 100}">Remove Template</div>\n </remove-template-icon>\n </template-summary-title-row>\n <template-summary-details>\n <template-subject-content>\n <template-subject data-bind="highlight: {text: suggestion.subject, terms: queryTerms}">\n {{suggestion.subject}}\n </template-subject>\n <template-first-line data-bind="highlight: {text: suggestion.firstLine, terms: queryTerms}">\n {{suggestion.firstLine}}\n </template-first-line>\n </template-subject-content>\n <template-last-updated>\n Last updated by <template-last-edited-by>{{suggestion.lastEdited.by.name}}</template-last-edited-by>\n <template-last-edited>\n {{$component.moment(suggestion.lastEdited.time).tz($component.globals.school().timeZone).fromNow()}}\n </template-last-edited>\n </template-last-updated>\n </template-summary-details>\n </template-summary>\n </span>\n {{/ifnot}}\n {{/ifnot}}\n {{/foreach}}\n <div\n data-bind="popover: { isModal: true, dim: true, noLabel: true, open: showRemoveError, disableDismiss: true }">\n <div class="popoverBody">\n <template-error>\n <div class="popoverTitle">Unable to Remove Template</div>\n <error-message class="body with-interventions">\n This template canât be removed because itâs currently used by\n {{pluralAsSentenceIntegerString("parent alert", interventionsUsingTemplateToRemove()?.length)}}.\n If youâd still like to remove this template, please\n <assist-link\n params="utterance: {text: removeUtterance()},\n allowClickBubble: true,\n invocable: false"\n data-bind="click: dismissRemoveError">\n contact Studybugs support\n </assist-link> to remove the\n {{plural("parent alert", interventionsUsingTemplateToRemove()?.length)}} first.\n </error-message>\n <interventions-using-container>\n <interventions-using>\n {{#foreach interventionsUsingTemplateToRemove}}\n <intervention-item params="createLinks: false, intervention: $data"></intervention-item>\n {{/foreach}}\n </interventions-using>\n </interventions-using-container>\n <buttons>\n <button class="post button button-primary" data-bind="click: dismissRemoveError">OK</button>\n </buttons>\n </template-error>\n </div>\n </div>\n '}),p().components.register("msg-template-search-field",{viewModel:function(e){var n=e.field,t=e.placeholderText,o=e.sendCategories,i=e.hasValue,a=new(p().subscribable),s=[];var r,M=new Cs({name:"Blank Message",isBlank:!0,categories:(r=function(e){return c.Ay.find(o(),function(n){return n.name===e})},new fs({conversation:r("Conversation"),announcement:r("Announcement"),newsletter:r("Newsletter"),notice:r("Notice"),parentAlert:r("Parent Alert")}))});return n.value.subscribe(function(){(0,Ri.k)()}),{field:n,hasValue:i,getTemplateSummaries:function(e,n){Bs(e).then(function(t){0===t.length&&""!==e.query?function(e,n,t){var o=new Cs({isNoResult:!0,query:e});n.unshift(o),t(n)}(e.query,t,n):function(e,n,t){""===e&&n.unshift(M),t(n)}(e.query,t,n)})},placeholderText:t,autocompletePostbox:a,dispose:function(){c.Ay.each(s,function(e){return e.dispose()})}}},template:'\n <template-field>\n <template-field-item>\n <sw-multi-autocomplete\n class="filterInput"\n params="query: getTemplateSummaries,\n selectedItems: field.value,\n hasUnrecognisedText: field.data.hasUnrecognisedText,\n textSelectionItemIds: field.data.textSelectionItemIds,\n hasFocus: field.hasFocus,\n suggestionsComponentName: \'msg-template-suggestions\',\n itemComponentName: \'template-item\',\n placeholderText: placeholderText,\n alwaysShowSuggestions: true,\n selectOnTabAndEnter: false,\n highlightFirst: true,\n suggestionsWithin: true,\n autocompletePostbox: autocompletePostbox,\n hasValue: hasValue"></sw-multi-autocomplete>\n </template-field-item>\n </template-field>\n <template-field-footer>\n <footer-spacer></footer-spacer>\n <footer-body>\n {{#if field.showFailure}}
1\n <span class="error" data-bind="text: field.validationMessage"></span>\n {{/if}}\n </footer-body>\n </template-field-footer>'});var Hs={createTemplateSearchField:function(){var e=new Ye._I("",void 0,[]);return e.data.textSelectionItemIds=p().observableArray(),e}};p().components.register("msg-template-search",{viewModel:function(e){var n=e.selectedSummaries,t=e.sendCategories,o=Hs.createTemplateSearchField();new Ye.qW([o]);var i=p().observable(!1),a=p().pureComputed(function(){return o.value().length}),s=[];return s.push(a.subscribe(function(){n(o.value())})),setTimeout(function(){o.hasFocus(!0)},10),M()(document).on("messages.reset-new-message",function(){return o.reset(),!0}),{templateSearchField:o,templateSearchFieldHasValue:i,placeHolderText:"Filter by template name or content",sendCategories:t,dispose:function(){c.Ay.each(s,function(e){return e.dispose()})}}},template:'\n <template-filter>\n <filter-input data-bind="css: { hasFocus: templateSearchField.hasFocus, hasValue: templateSearchFieldHasValue }">\n <msg-template-search-field params="field: templateSearchField,\n hasValue: templateSearchFieldHasValue,\n placeholderText: placeHolderText,\n sendCategories: sendCategories"></msg-template-search-field>\n <filter-input>\n </template-filter>'});var Vs=40;function Gs(e,n,t){(function(e,n){if(n.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,n),n.set(e,t)}function zs(e,n){return e.get(_s(e,n))}function Ys(e,n,t){return e.set(_s(e,n),t),t}function _s(e,n,t){if("function"==typeof e?e===n:e.has(n))return arguments.length<3?n:t;throw new TypeError("Private element is not present on this object")}var Ks=new WeakMap,Js=new WeakMap,Xs=new WeakMap,Qs=new WeakMap,Zs=new WeakMap,er=function(){return(0,j.A)(function e(n){var t=n.changed,o=n.categoryId,i=n.subject,a=n.text,s=n.files;(0,B.A)(this,e),Gs(this,Ks,void 0),Gs(this,Js,void 0),Gs(this,Xs,void 0),Gs(this,Qs,void 0),Gs(this,Zs,void 0),Ys(Ks,this,t),Ys(Js,this,o),Ys(Xs,this,i),Ys(Qs,this,a),Ys(Zs,this,s)},[{key:"changed",get:function(){return zs(Ks,this)}},{key:"categoryId",get:function(){return zs(Js,this)}},{key:"subject",get:function(){return zs(Xs,this)}},{key:"text",get:function(){return zs(Qs,this)}},{key:"files",get:function(){return zs(Zs,this)}}])}();function nr(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}p().components.register("msg-template-management",{viewModel:function(e){var n=[],t=e.creatingAnotherMessage,o=e.allFileUploadsComplete,i=e.selectedSummary(),a=e.templateToLoad,s=(0,Vt.oI)(e.dataPersisted),r=(0,Vt.oI)(e.persistedName),l=e.messageFieldsAreValid,d=e.templateNameHasValue,u=e.templateNameHasFocus,A=e.processMessageValidationFailures,q=e.postbox,m=p().observable(!1),f=p().observable(),h=p().observable(),W=p().observable(),g=p().observable(),v=p().observable(),b=p().observable(),y=e.templatedData;W.subscribe(function(e){d(!!e)});var w=p().observable(),k=p().pureComputed(function(){var e;return(null===(e=w())||void 0===e?void 0:e.length)>0}),x="Create New",T="Create",S="Replace",C=p().observable(),P=p().observable(!1),I=p().observable(!1);if(i)if(h(!i.isBlank),h())s(!0),f(i.id),C(x),W(i.name),t()||$s(i.id).then(function(e){return he(e)});else if(C(T),!t()){var E=new Un({categoryId:i.categoryId});M()(document).trigger("messages.new-prefilled",[E])}n.push(a.subscribe(function(e){he(e)})),n.push(q.subscribe(function(e){W(e.templateName)},void 0,"fill-template-name"));var N=p().pureComputed(function(){if(h())return"Enter a name for the template";var e,n,t=(null===(e=v())||void 0===e?void 0:e.trim().length)>0,o=(null===(n=b())||void 0===n?void 0:n.trim().length)>0;return t&&o?"Enter a name to create a template":t?"To create a template first enter a message":o?"To create a template first enter a subject":"To create a template first enter a subject and a message"}),F=p().observable(),R=p().observable();n.push(R.subscribe(function(e){return r(e)}));var D=p().pureComputed(function(){var e,n=null===(e=W())||void 0===e?void 0:e.trim();return null==n?void 0:n.length}),B=p().pureComputed(function(){var e,n=R(),t=null===(e=W())||void 0===e?void 0:e.trim();return n&&(null==t?void 0:t.length)&&n!==t}),j=p().pureComputed(function(){return B()&&!$()}),$=p().observable(!1),U=p().pureComputed(function(){return!$()&&!B()});n.push(U.subscribe(function(e){return s(e)}));var V=p().observable(),G=p().observable(),z=p().pureComputed(function(){return null!=V()}),Y=p().pureComputed(function(){var e;return(null===(e=G())||void 0===e?void 0:e.length)>0}),_=p().pureComputed(function(){return"Ask a human: Please change the parent alerts that currently use the message template"+" called â".concat(V().name,"â to use OTHER_TEMPLATE")}),K=0,J=c.Ay.debounce(function(e,n,t){js(e,n).then(function(o){var i;t===K&&(null===(i=W())||void 0===i?void 0:i.trim())===e&&f()===n&&(o?(V(o.templateSummary),G(o.templateSummary.interventionsUsing),C(S),te(S)):X())}).catch(function(e){})},300);function X(){V(void 0),G(void 0),xe(),h()?C(x):C(T),te(ne)}n.push(W.subscribe(function(e){var n=null==e?void 0:e.trim();if(n){var t=K+=1,o=f();J(n,o,t)}else X()}));var Q=p().observable(!1);Q.subscribe(function(e){return u(!!e)});var Z=p().pureComputed(function(){return h()?!z()&&(D()&&(B()||P())&&l()):D()&&($()||P())&&l()}),ee=p().pureComputed(function(){return!!l()&&(h()?D()&&B()&&!I()&&o():D()&&$()&&!I()&&o())}),ne="Update",te=p().observable(ne),oe=p().observable(!1),ie=p().observable(!1),ae=p().pureComputed(function(){return h()&&D()&&l()&&(B()||$()||oe())}),se=p().pureComputed(function(){return!!l()&&(h()&&D()&&(B()||$())&&!ie()&&o())}),re=p().observable(),Me=p().observable(),ce=p().observable(),le=p().observable(),de=p().observable(),ue=[Me,ce,le,de],Ae=p().observable(),pe=p().observable(),qe=Vs,me=za.subjectMaxLength,fe=za.subjectMaxLengthIncPersonalisation;
1function he(e){f(e.id),h(!0),C(x),W(e.name),R(e.name),g(e.categoryId),v(e.subject),b(e.content.text);var n=c.Ay.map(e.content.files,function(e){return function(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?nr(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):nr(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}({fileId:e.id},e.title?{title:e.title}:{})});F(n),w(e.interventionsUsing);var t=new Un({templateVersionId:e.versionId,categoryId:e.categoryId,subject:e.subject,text:e.content.text,files:e.content.files});M()(document).trigger("messages.new-prefilled",[t])}function We(e){var n=e.overwriteNameClash;if(ee()&&!m()){if(P(!0),Y())return le(!0),void re(!0);if(!n&&z())return ce(!0),void re(!0);m(!0);var t=g(),o=W(),i=v(),a=b(),s=F(),r={id:void 0,categoryId:t,name:o,subject:i,content:{text:a,files:s},overwriteNameClash:n};Rs(O.school().id,r,m,function(e){if(e.newVersionId){V(void 0),G(void 0);var n=e;if(n.templateId===f())throw"New template ID: ".concat(n.templateId," should not match original template ID: ").concat(f());I(!0),C("Template Created"),$(!1),window.setTimeout(function(){I(!1),P(!1),C(x),h(!0)},2500),f(n.templateId),ve({templateId:f(),newVersionId:n.newVersionId,updatedName:o,updatedCategoryId:t,updatedSubject:i,updatedText:a,updatedFiles:s})}else ye(e)},be)}}function ge(e){var n=e.overwriteNameClash,t=e.ignoreInterventions;if(se()&&!m()){if(oe(!0),Y())return le(!0),void re(!0);if(!n&&!t&&!j()&&k())return Me(!0),void re(!0);if(!n&&z())return ce(!0),void re(!0);m(!0);var o=f(),i=g(),a=W(),s=v(),r=b(),M=F(),c={id:o,categoryId:i,name:a,subject:s,content:{text:r,files:M},overwriteNameClash:n};Rs(O.school().id,c,m,function(e){if(e.newVersionId){V(void 0),G(void 0);var n=e;if(n.templateId!==o)throw"Template ID: ".concat(n.templateId," doesn't match original template ID: ").concat(o);ie(!0),te("Template Updated"),$(!1),window.setTimeout(function(){te(ne),ie(!1),oe(!1)},2500),ve({templateId:o,newVersionId:n.newVersionId,updatedName:a,updatedCategoryId:i,updatedSubject:s,updatedText:r,updatedFiles:M})}else ye(e)},be)}}function ve(e){var n=e.templateId,t=e.newVersionId,o=e.updatedName,i=e.updatedCategoryId,a=e.updatedSubject,s=e.updatedText,r=e.updatedFiles,c=o.trim();R(c),W(c);var l={selectedSummary:new Cs({id:n,categoryId:i,name:c,interventionsUsing:w()}),versionId:t,categoryId:i,subject:a,text:s,files:r};M()(document).trigger("templates.persisted",[l])}function be(e){P(!1),I(!1),oe(!1),ie(!1);var n=JSON.parse(e.responseText).failures;if(n){if(c.Ay.find(n,function(e){return"templateName"===e.field})){if(c.Ay.find(n,function(e){return"templateNameMissing"===e.fieldCode}))return we("Template Name Missing","Please provide a name for the template.");if(c.Ay.find(n,function(e){return"templateNameTooLong"===e.fieldCode}))return we("Template Name Too Long","The template name is too long (max ".concat(qe," characters)."));if(c.Ay.find(n,function(e){return"templateNameBadCharacters"===e.fieldCode}))return we("Template Name Has Disallowed Characters","The template name contains characters which we do not allow.")}else if(c.Ay.find(n,function(e){return"subject"===e.field})){if(c.Ay.find(n,function(e){return"missing"===e.fieldCode}))return we("Need A Subject","Please provide a subject for this template.");if(c.Ay.find(n,function(e){return"tooLong"===e.fieldCode}))return we("Subject Too Long","Subject is too long (max ".concat(me," characters, excluding personalisation)."));if(c.Ay.find(n,function(e){return"tooLongPersonalisations"===e.fieldCode}))return we("Subject Too Long","Subject is too long (max ".concat(fe," characters,")+" including personalisation).")}else if(c.Ay.find(n,function(e){return"text"===e.field})){if(c.Ay.find(n,function(e){return"missing"===e.fieldCode}))return we("Need A Message","Please provide a message for this template.");if(c.Ay.find(n,function(e){return"tooLong"===e.fieldCode}))return we("Message Too Long","Sorry, this message is too long.")}return A(n)}}function ye(e){if(V(e.templateSummary),G(e.templateSummary.interventionsUsing),Y())return le(!0),void re(!0);ce(!0),re(!0)}function we(e,n){return Ae(e),pe(n),de(!0),re(!0),!1}function ke(){re(!1),c.Ay.each(ue,function(e){return e(!1)})}function xe(){ke(),P(!1),oe(!1),Q(!0)}return n.push(y.subscribe(function(e){e.changed?$(!0):$(!1),g(e.categoryId),v(e.subject),b(e.text),F(e.files)})),{templateDocumentIcon:ft.templateDocument,globals:O,moment:H(),currentTemplateName:W,templateNameMaxLength:qe,interventionsUsingTemplate:w,templateHasInterventions:k,placeholder:N,posting:m,createTemplate:We,updateTemplate:ge,showErrorOrWarning:re,showIsUsedByInterventionsWarning:Me,showUnableToReplaceTemplateError:le,yesIgnoreIsUsingInterventions:function(){if(ke(),!oe())throw"Unrecognised state (not updating) for updating content of a template used by interventions";ge({ignoreInterventions:!0})},dismissIsUsingInterventionsWarning:function(){ke(),P(!1),oe(!1)},showNameClashWarning:ce,clashingTemplateSummary:V,clashingTemplateInterventions:G,clashingTemplateHasInterventions:Y,askAHumanToChangeTemplateUtterance:_,replaceNameClash:function(){if(ke(),oe())ge({overwriteNameClash:!0});else{if(!P())throw"Unrecognised state (not creating or updating) for replacing a template due to a name clash";We({overwriteNameClash:!0})}},nameFieldHasFocus:Q,showGeneralError:de,generalErrorTitle:Ae,generalErrorBody:pe,dismissErrorsAndWarnings:ke,dismissNameClashWarning:xe,createButtonMessage:C,createButtonVisible:Z,createButtonEnabled:ee,createJustCompleted:I,updateButtonMessage:te,updateButtonVisible:ae,updateButtonEnabled:se,updateJustCompleted:ie,pluralAsSentenceIntegerString:_e.hy,dispose:function(){c.Ay.each(n,function(e){return e.dispose()})}}},template:'\n <div class="filterInput">\n <template-name>\n <input type="text" spellcheck="true"\n data-bind="textInput: currentTemplateName,\n attr: { placeholder: placeholder, maxlength: templateNameMaxLength },\n hasFocus: nameFieldHasFocus,\n disable: posting">\n </template-name>\n <template-management-buttons>\n <template-buttons>\n {{#if createButtonVisible}}\n <template-button data-bind="click: createTemplate,\n clickBubble: false,\n css: { createEnabled: createButtonEnabled,\n postInProgress: posting,\n showCompleted: createJustCompleted }">\n {{createButtonMessage}}\n </template-button>\n {{/if}}\n {{#if updateButtonVisible}}\n <template-button data-bind="click: updateTemplate,\n clickBubble: false,\n css: { updateEnabled: updateButtonEnabled,\n postInProgress: posting,\n showCompleted: updateJustCompleted }">\n {{updateButtonMessage}}\n </template-button>\n {{/if}}\n </template-buttons>\n </template-management-buttons>\n\n <div\n data-bind="popover: { isModal: true, dim: true, noLabel: true, open: showErrorOrWarning, disableDismiss: true }">\n <div class="popoverBody">\n <template-error>\n\n {{#if showIsUsedByInterventionsWarning}}\n <div class="popoverTitle">Are you sure?</div>\n <error-message class="body with-interventions">\n The template youâre updating is used by\n {{pluralAsSentenceIntegerString("parent alert", interventionsUsingTemplate().length)}}:\n </error-message>\n <interventions-using-container>\n <interventions-using>\n {{#foreach interventionsUsingTemplate}}\n <intervention-item params="createLinks: false, intervention: $data"></intervention-item>\n {{/foreach}}\n </interventions-using>\n </interventions-using-container>\n <error-message-context>\n Are you sure the updated template will still work for these alerts?\n </error-message-context>\n <buttons>\n <button class="post button-primary" data-bind="click: yesIgnoreIsUsingInterventions">\n Yes - Go Ahead and Update It\n </button>\n <button class="post button-primary" data-bind="click: dismissIsUsingInterventionsWarning">\n No\n </button>\n </buttons>\n <error-tip>\n <p class="tip">
1\n <span class="tipBody">To create a new template simply edit the template name and click âCreateâ.\n </p>\n </error-tip>\n {{/if}}\n\n {{#if showNameClashWarning}}\n <div class="popoverTitle">Are you sure?</div>\n <error-message class="body">\n This will replace an existing template with that name:\n </error-message>\n <template-summary>\n {{#let {templateSumary: clashingTemplateSummary()}}}\n <template-summary-title-row>\n <template-title>\n <template-icon>{{{templateDocumentIcon}}}</template-icon>\n <template-name>{{templateSumary.name}}</template-name>\n </template-title>\n </template-summary-title-row>\n <template-summary-details>\n <template-subject-content>\n <template-subject>{{templateSumary.subject}}</template-subject>\n <template-first-line>{{templateSumary.firstLine}}</template-first-line>\n </template-subject-content>\n <template-last-updated>\n Last updated by\n <template-last-edited-by>{{templateSumary.lastEdited.by.name}}</template-last-edited-by>\n <template-last-edited>\n {{$component.moment(templateSumary.lastEdited.time).tz(globals.school().timeZone).fromNow()}}\n </template-last-edited>\n </template-last-updated>\n </template-summary-details>\n {{/let}}\n </template-summary>\n <buttons>\n <button class="post button button-primary" data-bind="click: replaceNameClash">\n Yes - Go Ahead and Overwrite It\n </button>\n <button class="post button button-secondary" data-bind="click: dismissNameClashWarning">\n No\n </button>\n </buttons>\n {{/if}}\n\n {{#if showUnableToReplaceTemplateError}}\n <div class="popoverTitle">Unable to Replace Template</div>\n <error-message class="body with-interventions">\n The template youâd be replacing is used by\n {{pluralAsSentenceIntegerString("parent alert", clashingTemplateInterventions().length)}}:\n </error-message>\n <interventions-using-container>\n <interventions-using>\n {{#foreach clashingTemplateInterventions}}\n <intervention-item params="createLinks: false, intervention: $data"></intervention-item>\n {{/foreach}}\n </interventions-using>\n </interventions-using-container>\n <error-message-context>\n To create a new template please choose a different name. If youâd like to change which template\n is used by a parent alert, please\n <assist-link\n params="utterance: {text: askAHumanToChangeTemplateUtterance()},\n allowClickBubble: true,\n invocable: false"\n data-bind="click: dismissErrorsAndWarnings">\n contact Studybugs support\n </assist-link>.\n </error-message-context>\n <buttons>\n <button class="post button button-primary" data-bind="click: dismissErrorsAndWarnings">OK</button>\n </buttons>\n {{/if}}\n\n {{#if showGeneralError}}\n <div class="popoverTitle">{{generalErrorTitle}}</div>\n <error-message class="body">\n {{generalErrorBody}}\n </error-message>\n <buttons>\n <button class="post button button-primary" data-bind="click: dismissErrorsAndWarnings">OK</button>\n </buttons>\n {{/if}}\n\n </template-error>\n </div>\n </div>\n </div>\n '});var tr=void 0;p().components.register("msg-templates",{viewModel:function(e){var n=[],t=e.visible,o=e.creatingAnotherMessage,i=e.choosingTemplate,a=e.allFileUploadsComplete,s=e.sendCategories,r
1=p().observable(),l=e.selectedTemplateSummary,d=e.templatedData,u=e.dataPersisted,A=e.persistedName,q=e.messageFieldsAreValid,m=e.processMessageValidationFailures,f=e.postbox,h=p().observable(!1),W=p().observable(!1),g=p().observable(!1),v=p().observable(!1),b=p().observable(),y=p().observable(),w=p().observableArray();n.push(f.subscribe(function(e){$s(e.templateId).then(function(e){r(e)})},tr,"load-template")),n.push(f.subscribe(function(){i(!1)},tr,"fill-template-name")),w.subscribe(function(){i(!1),l(w().length?w()[0]:void 0)}),M()(document).on("messages.reset-new-message",function(){return l(void 0),i(!0),u(!1),g(!1),v(!1),b(void 0),y(void 0),W(!1),h(!1),!0});var k=rs.A.filter;return n.push(f.subscribe(function(e){g(e.hasPreviews),b(e.subject),y(e.text)},tr,"message-preview")),{visible:t,choosingTemplate:i,selectedSummaries:w,selectedSummary:l,templatedData:d,dataPersisted:u,persistedName:A,allFileUploadsComplete:a,sendCategories:s,filterIcon:k,filterTooltipText:"Filter Templates",creatingAnotherMessage:o,templateToLoad:r,messageFieldsAreValid:q,processMessageValidationFailures:m,postbox:f,templateNameHasFocus:W,templateNameHasValue:h,hasPreviews:g,togglePreview:function(){g()&&v(!v())},previewVisible:v,previewSubject:b,previewText:y,dispose:function(){c.Ay.each(n,function(e){return e.dispose()})}}},template:'\n <msg-template-preview data-bind="visible: hasPreviews">\n <preview-tab-container data-bind="click: togglePreview">\n <preview-tab>\n <preview-tab-text>Preview</preview-tab-text>\n <open-close>\n <open-chevron data-bind="visible: previewVisible">»</open-chevron>\n <close-chevron data-bind="visible: !previewVisible()">»</close-chevron>\n </open-close>\n </preview-tab>\n </preview-tab-container>\n <preview-container data-bind="css: { \'open\': previewVisible }">\n <preview-content-container>\n <preview-content>\n <preview-subject data-bind="text: previewSubject"></preview-subject>\n <preview-text><text-content params="{ text: previewText }"></text-content></preview-text>\n </preview-content>\n </preview-content-container>\n <preview-explainer>\n Note: This is an illustration of how the personalisation in your template will look. The\n recipients are made-up â when your message is sent, it will of course contain real data.\n </preview-explainer>\n </preview-container>\n </msg-template-preview>\n <msg-template-bar>\n <template-bar>\n {{#if visible()}}\n {{#if choosingTemplate}}\n <template-bar-title>\n <filter-icon>\n <div class="icon">\n {{{filterIcon}}}\n <div data-bind="tooltip: {position: \'above\', mouseOpenDelay: 100}">{{{filterTooltipText}}}</div>\n </div>\n </filter-icon>\n </template-bar-title>\n {{/if}}\n {{/if}}\n {{#ifnot choosingTemplate}}\n <template-bar-title>Template</template-bar-title>\n {{/ifnot}}\n <template-interactions>\n {{#if visible()}}\n {{#if choosingTemplate}}\n <msg-template-search params="selectedSummaries: selectedSummaries,\n sendCategories: sendCategories">\n </msg-template-search>\n {{/if}}\n {{/if}}\n {{#ifnot choosingTemplate}}\n <msg-template-management\n data-bind="css: { hasValue: templateNameHasValue, hasFocus: templateNameHasFocus }"\n params="creatingAnotherMessage: creatingAnotherMessage,\n selectedSummary: selectedSummary,\n templateToLoad: templateToLoad,\n templatedData: templatedData,\n allFileUploadsComplete: allFileUploadsComplete,\n dataPersisted: dataPersisted,\n persistedName: persistedName,\n messageFieldsAreValid: messageFieldsAreValid,\n processMessageValidationFailures: processMessageValidationFailures,\n postbox: postbox,\n templateNameHasFocus: templateNameHasFocus,\n templateNameHasValue: templateNameHasValue,">\n </msg-template-management>\n {{/ifnot}}\n </template-interactions>\n </template-bar>\n </msg-template-bar>\n '});t(43591),t(69144),t(52811);function or(e,n,t){(function(e,n){if(n.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,n),n.set(e,t)}function ir(e,n){return e.get(sr(e,n))}function ar(e,n,t){return e.set(sr(e,n),t),t}function sr(e,n,t){if("function"==typeof e?e===n:e.has(n))return arguments.length<3?n:t;throw new TypeError("Private element is not present on this object")}p().components.register("pb-recipients-notes",{template:"<pb-sg></pb-sg> Smart grouping supported. Parents of the same children can see each otherâs replies."}),p().components.register("pb-whole-family-notes",{template:"<pb-sg></pb-sg> Smart grouping supported. Parents with siblings at the school receive fewer messages."}),p().components.register("pb-single-pupil-notes",{viewModel:function(e){return{selectWholeFamily:function(){return e.selectedGroup(vr)}}},template:'\n Parents will receive a separate message for each child at the school.\n For smart grouping see <a data-bind="click: selectWholeFamily">Whole Family</a>.'});
1var rr,Mr=new WeakMap,cr=new WeakMap,lr=new WeakMap,dr=function(){return(0,j.A)(function e(n,t,o){(0,B.A)(this,e),or(this,Mr,void 0),or(this,cr,void 0),or(this,lr,void 0),ar(Mr,this,n),ar(cr,this,t),ar(lr,this,o)},[{key:"name",get:function(){return ir(Mr,this)}},{key:"filterPersonalisations",value:function(e){return ir(cr,this).filter(function(n){return!n.addOnsRequired||n.addOnsRequired.attendance&&e().attendance})}},{key:"notesComponentName",get:function(){return ir(lr,this)}}])}(),ur=new WeakMap,Ar=function(){return(0,j.A)(function e(n){(0,B.A)(this,e),or(this,ur,void 0),ar(ur,this,n)},[{key:"attendance",get:function(){return ir(ur,this)}}])}(),pr=(Object.freeze({SINGLE:"single",MULTI_OR:"multi-or",MULTI_AND:"multi-and"}),new WeakMap),qr=new WeakMap,mr=new WeakMap,fr=new WeakMap,hr=new WeakMap,Wr=function(){return(0,j.A)(function e(n){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:void 0,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:void 0;(0,B.A)(this,e),or(this,pr,void 0),or(this,qr,void 0),or(this,mr,void 0),or(this,fr,void 0),or(this,hr,void 0),ar(pr,this,n),ar(qr,this,t),ar(mr,this,o),ar(fr,this,i),ar(hr,this,a)},[{key:"getText",value:function(e){return e&&ir(qr,this)?ir(pr,this).toLowerCase():ir(pr,this)}},{key:"addOnsRequired",get:function(){return ir(mr,this)}},{key:"parameterisedName",get:function(){return ir(fr,this)||ir(pr,this)}},{key:"parameters",get:function(){return ir(hr,this)}},{key:"isParameterised",value:function(){return void 0!==ir(hr,this)&&ir(hr,this).length}}])}(),gr=new dr("Recipients",[new Wr("Contact First Names",!1)],"pb-recipients-notes"),vr=new dr("Whole Family",[new Wr("Pupil First Names",!1),new Wr("Daughter/Son/Children"),new Wr("Child/Children"),new Wr("She/He/They"),new Wr("Her/His/Their"),new Wr("Her/Him/Them"),new Wr("Is/Are"),new Wr("Does/Do"),new Wr("Was/Were"),new Wr("Has/Have")],"pb-whole-family-notes"),br=new dr("Single Pupil",[new Wr("Pupil First Name",!1),new Wr("Daughter/Son"),new Wr("She/He"),new Wr("Her/His"),new Wr("Her/Him"),new Wr("attendance this term",!1,new Ar({attendance:!0})),new Wr("attendance this year",!1,new Ar({attendance:!0})),new Wr("absence this term",!1,new Ar({attendance:!0})),new Wr("absence this year",!1,new Ar({attendance:!0})),new Wr("days attended this term",!1,new Ar({attendance:!0})),new Wr("days attended this year",!1,new Ar({attendance:!0})),new Wr("days absent this term",!1,new Ar({attendance:!0})),new Wr("days absent this year",!1,new Ar({attendance:!0})),new Wr("days required this term",!1,new Ar({attendance:!0})),new Wr("days required this year",!1,new Ar({attendance:!0}))],"pb-single-pupil-notes"),yr=[gr,vr,br],wr=t(44847);function kr(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function xr(e){var n="messages",t=[],o=e.showFilters,i=e.visible,a=p().observable(),s=p().pureComputed(function(){return c.Ay.filter(O.categories(),function(e){return e.isOption})}),r=new Ye._I("category"),l=_a(r),d=Xa(),u=new Ye._I("subject",za.validateSubject,""),A=new Ye._I("text",bt,""),q=new Ye.qW([],null,"files",za.validateFiles),m=0,f=new Ye.qW([r,l,d,u,A,q],za.failureCodes),h=p().observable(),W=p().observable(),g=p().observable(!1),v=p().observable(),b=p().observable(),w=p().observable(),k=p().observable(),x=p().observable(),T=p().observable(),S=p().observable(!1),C=p().observable(),P=new(p().subscribable),I=p().pureComputed(function(){var e=r.value();if(e)return"none"!==e.threading}),E=p().pureComputed(function(){var e=r.value();if(e)return"Parent Alert"===e.name}),N=p().observable(!1),F=p().pureComputed(function(){return O.school().addOns.attendance}),R=p().pureComputed(function(){var e=ee(),n=S();return F()&&e&&n}),D=p().pureComputed(function(){return O.school().addOns.attendance?"Choose when this is sent. Can be a fixed schedule or attendance trigger (create a template first).":"You need Studybugs Attendance to have this sent on a schedule"}),B=p().observable(!0),j=p().pureComputed(function(){return B()&&!u.showFailure()});u.charCount=p().pureComputed(function(){var e=u.value(),n=za.stripPersonalisation(e).length;return 0===n?"".concat(za.subjectMaxLength," chars max"):"".concat(n," of ").concat(za.subjectMaxLength," chars")});var $=function(){function e(e){return e.includes("{")||e.includes("}")}var n=u.value(),t=A.value(),o=e(n),i=e(t);if(o||i){var a=new ss({subject:o?n:void 0,text:i?t:void 0});y.messagePreview(O.school().id,a,function(e){var a=o?e.subjectPreview:n,s=i?e.textPreview:t,r=new ss({hasPreviews:!0,subject:a,text:s});P.notifySubscribers(r,"message-preview")},function(e){var n=new ss({hasPreviews:!1});P.notifySubscribers(n,"message-preview")})}else{var s=new ss({hasPreviews:!1});P.notifySubscribers(s,"message-preview")}};t.push(u.value.subscribe($)),t.push(A.value.subscribe($));var U=p().pureComputed(function(){return c.Ay.find(l.value(),function(e){return e.groupId})}),H=p().observable(),V=p().observable(),G=new(p().subscribable);t.push(G.subscribe(function(e){e===Ra.I.OPENED&&V()&&V(!1)}));var z=p().observable(),Y=p().observable(!0),_=p().pureComputed(function(){return i()&&!J()&&!z()&&f.treeIsValid()&&Y()}),K=p().pureComputed(function(){var e=E()?" Now":"",n=U()?"â¦":"";return"Send".concat(e).concat(n)}),J=p().observable();e.isSent&&t.push(J.subscribe(e.isSent));var X=p().pureComputed(function(){return I()?"Message Sent":"On its way"}),Q=p().observable(!0),Z=[r,A,u,q],ee=p().pureComputed(function(){return c.Ay.every(Z,function(e){return e.isValid()})}),ne=p().pureComputed(function(){var e,n,t=r.value()!=w(),o=(null===(e=u.value())||void 0===e?void 0:e.trim())!==(null===(n=k())||void 0===n?void 0:n.trim()),i=A.value()!==x(),a=!c.Ay.isEqual(ie(),T()||[]);return t||o||i||a}),te=p().pureComputed(function(){return!!Y()&&(ne()&&ee()&&!z())});ne.extend({notify:"always",rateLimit:{timeout:400,method:"notifyWhenChangesStop"}}),te.extend({notify:"always"});var oe=p().observable();function ie(){return c.Ay.map(q.value(),function(e){var n=e.findChild("file").value(),t=e.findChild("title").value(),o={fileId:n.id};return t.trim()!==Da.C(n.file.name)&&(o.title=t),o})}t.push(te.subscribe(function(e){return function(e){var n,t=new er({changed:e,categoryId:null===(n=r.value())||void 0===n?void 0:n.id,subject:u.value(),text:A.value(),files:ie()});oe(t)}(e)})),M()(document).on("".concat(n,".file-upload-start"),function(){m++,Y(!1)}),M()(document).on("".concat(n,".file-upload-stop"),function(){0===--m&&Y(!0)});var ae=p().pureComputed(function(){var e=l.value().filter(function(e){return e.hasOwnProperty("groupId")}).map(function(e){return e.name});return"".concat(e.join(" + "))}),se=p().observable();function re(){var e={typeId:101,text:A.value()};q.value().length&&(e.files=ie());var n={categoryId:r.value().id,content:e,subject:u.value(),participantIds:c.Ay.compose(c.Ay.flatten,c.Ay.map)(l.value(),function(e){if(e.groupId)return[{groupId:e.groupId}];
1if(e.dependents||e.pupil)return c.Ay.map(e.recipients,function(e){var n={};return e.user&&(n.userId=e.user.id),e.contact&&(n.contactId=e.contact.id),n});var n={};return e.user&&(n.userId=e.user.id),e.contact&&(n.contactId=e.contact.id),[n]})};function t(e){l.data.cacheContextId(l.data.cacheContextId()+1),d.data.cacheContextId(d.data.cacheContextId()+1);var n=M().parseJSON(e.responseText);return!n.failures||Me(n.failures)}I()||(n.relatesTo=c.Ay.map(d.value(),function(e){return{pupilId:e.id}})),v()&&(n.templateVersionId=v()),U()&&!V()?y.checkMessage(O.school().id,n,z,function(e){var n=_e.iB;e.contactsText="".concat(n(e.to)," contact").concat(e.to>1?"s":""),e.reachableText=n(e.reachable),H(e),V(!0)},t):y.postMessage(O.school().id,n,z,function(e){g(!1),se(!0),V(!1),H(null),J(e),o(!0),ce()},t)}var Me=function(e){return 0!=f.processValidationResponse(e).length};function ce(){se()&&a()&&(M()(document).trigger("change-alert"),window.setTimeout(ce,1e3))}function le(){return g(!1),q.value([]),c.Ay.each(f.value(),function(e){return e.reset()}),b(void 0),v(void 0),w(void 0),k(void 0),x(void 0),T(void 0),J(!1),!0}function de(e){var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return c.Ay.map(e,function(e){return function(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?kr(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):kr(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}({fileId:e.id?e.id:e.fileId},e.title&&!n?{title:e.title}:{})})}M()(document).on("change",function(e){if(se()&&201===e.typeId){var n=J().inboxItemId;e.item.id===n&&se(!1)}}),t.push(O.school.subscribe(le)),M()(document).on("".concat(n,".reset-new-message"),le),M()(document).on("".concat(n,".new-prefilled"),function(e,n){Q(!1);var t=void 0!==n.templateVersionId;if(t&&v(n.templateVersionId),n.categoryName){var o=c.Ay.find(s(),function(e){return e.name===n.categoryName});r.value(o),t&&w(o)}else if(n.categoryId){var a=c.Ay.find(s(),function(e){return e.id===n.categoryId});r.value(a),t&&w(a)}if(void 0!==n.subject&&(u.value(n.subject),t&&k(n.subject)),void 0!==n.text&&(A.value(n.text),t&&x(n.text)),void 0!==n.files&&n.files.length){var l=n.files;t&&T(de(l,!0)),l.forEach(function(e){!function(e){var n=void 0,t={},o={id:e.id,file:{name:e.title}},i=new Ye._I("file",n,o),a=new Ye._I("title",n,e.title),s=new Ye.qW([i,a],t),r={type:e.type,extension:e.extension,url:e.url,previewUrl:e.previewUrl};s.setNoLongerEditable=function(){},s.bindings={sizeText:Da.U(e.size),isUploading:p().observable(!1),uploadProcessed:p().observable(!0),remove:function(){return q.children.remove(s)},fileItem:{size:e.size,uploadInfo:p().observable(r),title:e.title}},q.children.push(s)}(e)})}p().tasks.runEarly(),M()(document).trigger("to-field-init",[n]),n.templateName&&P.notifySubscribers(n,"fill-template-name"),i(!0)}),M()(document).on("".concat(n,".new-from-template"),function(e,t){if(void 0===t.templateId)throw'"'.concat(n,'.new-from-template" no template ID found. data=').concat(t," (event=").concat(e,")");Q(!1),P.notifySubscribers(t,"load-template")}),M()(document).on("templates.persisted",function(e,n){b(n.selectedSummary),v(n.versionId);var t=c.Ay.find(s(),function(e){return e.id===n.categoryId});return w(t),k(n.subject),x(n.text),T(de(n.files)),!0}),a.subscribe(function(e){e?M()(document).on("keydown.newMessage",function(e){"Enter"===e.key&&e.ctrlKey&&!e.altKey&&!e.metaKey&&_()&&re(),"Escape"!==e.key&&"Esc"!==e.key||B(!B())}):(M()(document).off("keydown.newMessage"),M()(window).off("resize.newMessage"))});var ue=za.maxFiles,Ae="Youâve added "+ue+" files â thatâs the limit for one message.";function pe(e){e.forEach(function(e){"pupilTypeNotResolvable"===e.serverSideFieldCode()&&e.serverSideFieldCode(null)})}return t.push(u.value.subscribe(function(){return pe([A])})),t.push(A.value.subscribe(function(){return pe([u])})),t.push(l.value.subscribe(function(){return pe([A,u])})),{visible:i,isActive:a,eventNamespace:n,categoryField:r,sendCategories:s,isParentAlertCategory:E,sendTakeUpReminder:Hn.sendTakeUpReminder,toField:l,relatesToField:d,subjectField:u,subjectElement:h,textField:A,textElement:W,filesFieldSet:q,isGroupMessage:I,personalisationLinkVisible:j,showPersonalisations:function(){B(!1),A.hasFocus()||u.hasFocus(!0)},personalisationsHidden:B,blockMousedown:function(){return!1},srProcessing:se,confirmInfo:H,confirmBoxOpen:V,parentAlertDialogPostbox:G,scheduleToSendMsgText:"Scheduleâ¦",scheduleMsgInsteadText:"Actually Iâd like to schedule thisâ¦",scheduleToSendAvailable:F,scheduleToSendEnabled:R,showCannotScheduleBox:function(e,n){
1n.stopPropagation(),N(e)},cannotScheduleBoxOpen:N,scheduleToSendTooltipText:D,sendButtonLabel:K,send:re,sendEnabled:_,sending:z,sent:J,sentCaption:X,allFileUploadsComplete:Y,groupNames:ae,choosingTemplate:Q,selectedTemplateSummary:b,creatingAnother:g,templatedData:oe,templateDataPersisted:S,persistedTemplateName:C,templatesPostbox:P,templatedFieldsAreValid:ee,maxFiles:ue,maxFilesReachedMsg:Ae,fileItemComponent:"file-item-stored",uploadFilesApiCallback:function(e){var n=e.formData,t=e.inProgress,o=e.uploadProgress,i=e.success,a=e.failure,s=e.complete;y.uploadFile(O.school().id,n,t,o,i,a,s)},processValidationFailures:Me,view:function(){M()(document).trigger("select-inbox-item",[J()]),le()},createAnother:function(){g(!0),c.Ay.each(q.children(),function(e){return e.setNoLongerEditable()}),l.reset(),d.reset(),l.hasFocus(!0),J(!1),o(!1),setTimeout(function(){return te.notifySubscribers(te.peek())},10)},dispose:function(){c.Ay.each(t,function(e){return e.dispose()}),M()(document).off("".concat(n,".new-prefilled")),M()(document).off("".concat(n,".new-from-template")),M()(document).off("templates.persisted"),M()(document).off("".concat(n,".reset-new-message"),le),M()(document).off("".concat(n,".file-upload-start")),M()(document).off("".concat(n,".file-upload-stop"))}}}function Tr(e,n,t){(function(e,n){if(n.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,n),n.set(e,t)}function Sr(e,n,t){return e.set(Pr(e,n),t),t}function Cr(e,n){return e.get(Pr(e,n))}function Pr(e,n,t){if("function"==typeof e?e===n:e.has(n))return arguments.length<3?n:t;throw new TypeError("Private element is not present on this object")}p().components.register("bar-scroller",{viewModel:function(e){var n=e.resetScrollPosition,t=p().observable(),o=function(e){var n=t();n.scroll({left:n.scrollLeft+e,behavior:"smooth"})},i=p().observable(0),a=p().observable(),s=p().pureComputed(function(){return i()>0}),r=p().pureComputed(function(){return i()<a()}),M=p().pureComputed(function(){return s()||r()}),c=[];c.push(t.subscribe(function(e){e.addEventListener("scroll",function(){i(e.scrollLeft)}),new ResizeObserver(function(){a(e.scrollWidth-e.offsetWidth)}).observe(e.firstElementChild)})),c.push(n.subscribe(function(){var e=t();e&&(e.scrollLeft=0)}));return{scrollPaneElement:t,scrollLeft:function(){return o(-350)},scrollRight:function(){return o(350)},canScrollLeft:s,canScrollRight:r,canScroll:M,dispose:function(){return wr._.each(c,function(e){return e.dispose()})}}},template:'\n <bar-scroll-pane data-bind="element: scrollPaneElement, css: {canScroll: canScroll}">\n <div data-bind="template: {nodes: $componentTemplateNodes, data: $parent}"></div>\n </bar-scroll-pane>\n {{#if canScroll}}\n <bar-scroll-buttons>\n <button data-bind="click: scrollLeft, enable: canScrollLeft" class="left"></button>\n <button data-bind="click: scrollRight, enable: canScrollRight" class="right"></button>\n </bar-scroll-buttons>\n {{/if}}'}),p().components.register("personalisation-bar",{viewModel:function(e){var n=e.target,t=e.hasFocus,o=e.hidden,i=e.initialGroupIndex||0,a=e.showSmartGroupingNotes,r=p().pureComputed(function(){return s.m.school&&s.m.school()?s.m.school().addOns:{}}),M=p().observable(),c=p().observable(),l=new ResizeObserver(function(){c("".concat(n.offsetWidth-10,"px")),M("".concat(n.offsetHeight,"px"))});l.observe(n);var d=p().observable(yr[i]),u=[{label:"Aa",isLower:!1},{label:"aa",isLower:!0}],A=p().observable(u[0]),q=rs.A.clear;return{hidden:o,hide:function(){return o(!0)},closeIcon:q,targetHasFocus:t,blockMousedown:function(){return!1},bottom:M,maxWidth:c,personalisationGroups:yr,addOns:r,selectedGroup:d,caseOptions:u,selectedCase:A,select:function(e){var t,o,i,a;t=n,o="{".concat(e.getText(A().isLower),"}"),i=t.selectionStart||0,a=t.selectionEnd||0,t.value=t.value.slice(0,i)+o+t.value.slice(a),t.selectionStart=t.selectionEnd=i+o.length,t.dispatchEvent(new Event("change"))},showNotes:a,dispose:function(){l.disconnect()}}},template:'\n <popup-box data-bind="visible: targetHasFocus,\n event: {mousedown: blockMousedown},\n style: {bottom: bottom}" unselectable="on">\n {{#ifnot hidden}}\n <top-bar>\n <bar-title>Personalisation</bar-title>\n <sw-radio params="items: personalisationGroups, selectedItem: selectedGroup">\n {{$data.name}}\n </sw-radio>\n <sw-radio params="items: caseOptions, selectedItem: selectedCase">\n {{$data.label}}\n </sw-radio>\n <close-bar-icon>
1\n <span data-bind="event: {mousedown: hide}">\n {{{closeIcon}}}\n </span>\n </close-bar-icon>\n </top-bar>\n {{#let {select: select, selectedCase: selectedCase}}}\n <bar-scroller params="resetScrollPosition: selectedGroup" data-bind="style: {\'max-width\': maxWidth}">\n <item-links data-bind="foreach: selectedGroup().filterPersonalisations(addOns)">\n <a data-bind="click: select">{{$data.getText(selectedCase().isLower)}}</a>\n </item-links>\n </bar-scroller>\n {{/let}}\n {{#if selectedGroup().notesComponentName && showNotes()}}\n <group-notes data-bind="component: {name: selectedGroup().notesComponentName,\n params: {selectedGroup: selectedGroup}}"></group-notes>\n {{/if}}\n {{/ifnot}}\n </popup-box>'}),p().components.register("new-message",{viewModel:{createViewModel:function(e){return rr||(rr=xr(e)),rr.isActive(!0),rr.dispose=function(){return rr.isActive(!1)},rr}},template:'\n <nm-container data-bind="css: { visible: visible() }">\n <nm-scrollpane-container>\n <nm-scrollpane>\n {{#ifnot sent}}\n {{#ifnot choosingTemplate}}\n <form>\n {{#if categoryField.value}}\n <msg-field>\n <msg-field-label>Category</msg-field-label>\n <msg-field-item>\n <sw-picker params="items: sendCategories,\n selectedItem: categoryField.value,\n placeholder: \'Pick a Category\'">\n <msg-category params="category: $data"></msg-category>\n </sw-picker>\n </msg-field-item>\n </msg-field>\n <msg-field-footer>\n <footer-spacer></footer-spacer>\n <footer-body>\n <footer-note>{{categoryField.value().description}}</footer-note>\n {{#if isParentAlertCategory}}\n <footer-note>\n <a href="#" data-bind="goto: s.m.schoolPath(\'help/attendance/parentalerts\')">Read more</a>.\n </footer-note>\n <br>\n <footer-note>To have this sent on a schedule, first create a template.</footer-note>\n {{/if}}\n </footer-body>\n </msg-field-footer>\n\n <to-field params="field: toField,\n relatesTo: relatesToField.value,\n category: categoryField.value"></to-field>\n {{#ifnot isGroupMessage}}\n <relates-to-field params="field: relatesToField,\n to: toField.value,\n category: categoryField.value"></relates-to-field>\n <relations-overlay params="toField: toField,\n relatesToField: relatesToField"></relations-overlay>\n {{/ifnot}}\n <msg-field class="subject">\n <msg-field-label>Subject</msg-field-label>\n <msg-field-item>\n <div style="position: relative">\n <input type="text" spellcheck="true" autocomplete="off"\n data-bind="textInput: subjectField.value,\n hasFocus: subjectField.hasFocus,\n element: subjectElement">\n {{#with: subjectElement(), as: \'element\', noChildContext: true}}\n <personalisation-bar params="target: element,\n hasFocus: subjectField.hasFocus,\n hidden: personalisationsHidden,\n initialGroupIndex: 1,\n showSmartGroupingNotes: isGroupMessage"></personalisation-bar>\n {{/with}}\n </div>\n </msg-field-item>\n </msg-field>\n <msg-field-footer>\n <footer-spacer></footer-spacer>\n <footer-body class="relativePositioned">\n <personalisation-link data-bind="visible: personalisationLinkVisible,\n event: {mousedown: blockMousedown}">\n Creating a template? <a data-bind="click: showPersonalisations">Personalise it</a>.\n </personalisation-link>\n <subject-char-count>\n {{subjectField.charCount}}\n </subject-char-count>\n {{#if subjectField.showFailure}}
1\n <span class="error" data-bind="text: subjectField.validationMessage"></span>\n {{/if}}\n </footer-body>\n </msg-field-footer>\n <msg-field class="msg">\n <msg-field-label>Message</msg-field-label>\n <msg-field-item>\n <content-box>\n <div style="position: relative">\n <textarea spellcheck="true"\n data-bind="textInput: textField.value,\n hasFocus: textField.hasFocus,\n disable: sending,\n element: textElement"></textarea>\n {{#with: textElement(), as: \'element\', noChildContext: true}}\n <personalisation-bar params="target: element,\n hasFocus: textField.hasFocus,\n hidden: personalisationsHidden,\n showSmartGroupingNotes: isGroupMessage"></personalisation-bar>\n {{/with}}\n </div>\n <file-upload params="eventNamespace: eventNamespace,\n maxFiles: maxFiles,\n maxFilesReachedMsg: maxFilesReachedMsg,\n filesFieldSet: filesFieldSet,\n uploadFilesApiCallback: uploadFilesApiCallback,\n fileItemComponent: fileItemComponent">\n </file-upload>\n </content-box>\n </msg-field-item>\n </msg-field>\n <msg-field-footer>\n <footer-spacer></footer-spacer>\n <footer-body>\n <footer-note>\n No need to sign off your message as from the school â the schoolâs name will appear automatically.\n </footer-note>\n {{#if textField.showFailure}}\n <span class="error" data-bind="text: textField.validationMessage"></span>\n {{/if}}\n </footer-body>\n </msg-field-footer>\n <send-section>\n <button class="send button button-primary"\n data-bind="click: send, enable: sendEnabled">{{sendButtonLabel}}</button>\n <div data-bind="tooltip: {position: \'below\',\n enable: sendEnabled}">Keyboard Shortcut:<br><b>Ctrl+Enter</b></div>\n {{#if isParentAlertCategory}}\n <schedule-send data-bind="css: { greyed: !scheduleToSendAvailable() }">\n {{#ifnot scheduleToSendAvailable()}}\n <a href="#">{{scheduleToSendMsgText}}</a>\n {{/ifnot}}\n {{#if scheduleToSendAvailable()}}\n {{#if scheduleToSendEnabled()}}\n <parent-alert-enquiry params="label: scheduleToSendMsgText,\n groupName: groupNames,\n templateName: persistedTemplateName,\n customClass: \'newMessage\',\n submitButtonText: \'Submit\'">\n </parent-alert-enquiry>\n {{/if}}\n {{#ifnot scheduleToSendEnabled()}}\n <a href="#" data-bind="click: function(_, event) { showCannotScheduleBox(true, event) }">\n {{scheduleToSendMsgText}}\n </a>\n {{/ifnot}}\n {{/if}}\n </schedule-send>\n <div data-bind="tooltip: {position: \'below\', enable: !scheduleToSendEnabled()}">\n {{scheduleToSendTooltipText}}\n </div>\n {{/if}}\n <div data-bind="popover: {isModal: true, dim: true, open: cannotScheduleBoxOpen }">\n <div class="popoverBody cannotScheduleDialog">\n <div class="popoverTitle">Template Not Saved</div>\n <div class="body">\n Before the message can be scheduled youâll need to save the changes\n youâve made to the template.\n <button class="button button-primary"\n data-bind="click: function(_, event) { showCannotScheduleBox(false, event) }">\n OK\n </button>\n </div>\n </div>\n </div>
1\n </send-section>\n {{#ifnot isGroupMessage}}\n <p class="tip convo">\n <span class="tipBody">Want to start multiple separate conversations with different participants?<br>\n After you hit <term>Send</term>, select <term>Create Another the Same</term>.\n </p>\n {{/ifnot}}\n <div data-bind="popover: {isModal: true, dim: true, noLabel: true, open: confirmBoxOpen}">\n <div class="popoverBody">\n <msg-send-confirm data-bind="if: confirmInfo">\n <div class="body">\n <p class="contacts">This message will be sent immediately to\n {{confirmInfo().contactsText}}<br>\n ({{confirmInfo().reachableText}} are currently reachable).</p>\n <p>Would you like to proceed?</p>\n <button class="send button button-primary"\n data-bind="click: send, enable: sendEnabled">Yes, send it!</button>\n <a href="#" data-bind="click: function() { confirmBoxOpen(false) }">Hmm maybe not â go back</a>\n {{#if isParentAlertCategory}}\n <schedule-send data-bind="css: { greyed: !scheduleToSendAvailable() }">\n {{#ifnot scheduleToSendAvailable()}}\n <a href="#">{{scheduleMsgInsteadText}}</a>\n {{/ifnot}}\n {{#if scheduleToSendAvailable()}}\n {{#if scheduleToSendEnabled()}}\n <parent-alert-enquiry params="label: scheduleMsgInsteadText,\n groupName: groupNames,\n templateName: persistedTemplateName,\n customClass: \'newMessage\',\n submitButtonText: \'Submit\',\n postbox: parentAlertDialogPostbox">\n </parent-alert-enquiry>\n {{/if}}\n {{#ifnot scheduleToSendEnabled()}}\n <a href="#"\n data-bind="click: function(_, event) { confirmBoxOpen(false);\n showCannotScheduleBox(true, event) }">\n {{scheduleMsgInsteadText}}\n </a>\n {{/ifnot}}\n {{/if}}\n </schedule-send>\n <div data-bind="tooltip: {position: \'below\'}">\n {{scheduleToSendTooltipText}}\n </div>\n {{/if}}\n </div>\n <div class="body footnote">\n <p>Reachable contacts will receive messages via the Studybugs app or email. The remainder will\n first need to register with Studybugs\n {{#if s.m.school().addOns.attendance}}or provide a contact email address to the school.{{/if}}\n {{#ifnot s.m.school().addOns.attendance}}(or provide a contact email address to the school,\n if you use Studybugs Attendance).{{/ifnot}}</p>\n </div>\n </msg-send-confirm>\n </div>\n </div>\n {{/if}}\n </form>\n {{/ifnot}}\n {{/ifnot}}\n {{#if sent}}\n <nm-sent>\n <svg viewBox="0 0 98 98">\n <circle cx="49" cy="49" r="48"/>\n <polyline points="20,53 39,72 76,35 "/>\n </svg>\n <div class="caption">{{sentCaption}}</div>\n <div>\n {{#if srProcessing}}
1\n <span class="spinner"><spinner class="dark"></spinner>Processingâ¦</span>\n {{/if}}\n {{#ifnot srProcessing}}\n <a href="#" data-bind="click: view">View Message</a>\n {{/ifnot}}\n <a href="#" data-bind="click: createAnother">Create Another the Same</a>\n </div>\n </nm-sent>\n {{/if}}\n </nm-scrollpane>\n </nm-scrollpane-container>\n {{#ifnot sent}}\n <templates-container>\n <msg-templates params="visible: visible,\n choosingTemplate: choosingTemplate,\n selectedTemplateSummary: selectedTemplateSummary,\n creatingAnotherMessage: creatingAnother,\n allFileUploadsComplete: allFileUploadsComplete,\n sendCategories: sendCategories,\n templatedData: templatedData,\n dataPersisted: templateDataPersisted,\n persistedName: persistedTemplateName,\n messageFieldsAreValid: templatedFieldsAreValid,\n processMessageValidationFailures: processValidationFailures,\n postbox: templatesPostbox">\n </msg-templates>\n </templates-container>\n {{/ifnot}}\n </nm-container>\n '});var Ir=new WeakMap,Or=new WeakMap,Lr=new WeakMap,Er=new WeakMap,Nr=new WeakMap,Fr=new WeakMap,Rr=new WeakMap,Dr=new WeakMap,Br=new WeakMap,jr=new WeakMap,$r=function(){return(0,j.A)(function e(n){var t=this;(0,B.A)(this,e),Tr(this,Ir,void 0),Tr(this,Or,p().pureComputed(function(){return c.Ay.flatten(c.Ay.map(t.categoryFilterGroups(),function(e){return e.filters}))})),Tr(this,Lr,p().pureComputed(function(){return c.Ay.some(t.categoryFilters(),function(e){return!e.isSelected()})})),Tr(this,Er,p().pureComputed(function(){return(t.hasUnselectedCategories()?"S":"Des")+"elect All"})),Tr(this,Nr,p().observable()),Tr(this,Fr,p().pureComputed(function(){var e=c.Ay.filter(t.categoryFilters(),function(e){return e.isSelected()}),n={categories:c.Ay.map(e,function(e){return e.category.id})},o=Cr(jr,t).call(t);return o&&(n.search=o),n})),Tr(this,Rr,p().observable()),Tr(this,Dr,p().observable()),Tr(this,Br,p().observable()),Tr(this,jr,p().pureComputed(function(){var e;return((null!==(e=Cr(Dr,t).call(t))&&void 0!==e?e:"")+"").trim()}).extend({rateLimit:{timeout:400,method:"notifyWhenChangesStop"}})),this.reset=function(){Cr(Dr,t).call(t,null),c.Ay.each(t.categoryFilters(),function(e){return e.isSelected(!0)})},Sr(Ir,this,p().pureComputed(function(){var e=c.Ay.map(n(),function(e){return new zr(e)}),t=c.Ay.groupBy(e,function(e){return"none"===e.category.threading?0:1});return[new Hr(t[0]||[]),new Hr(t[1]||[])]}))},[{key:"categoryFilterGroups",get:function(){return Cr(Ir,this)}},{key:"categoryFilters",get:function(){return Cr(Or,this)}},{key:"hasUnselectedCategories",get:function(){return Cr(Lr,this)}},{key:"toggleAllCategories",value:function(){var e=this.hasUnselectedCategories();c.Ay.each(this.categoryFilters(),function(n){return n.isSelected(e)})}},{key:"toggleLinkLabel",get:function(){return Cr(Er,this)}},{key:"element",get:function(){return Cr(Nr,this)}},{key:"filterIconHtml",get:function(){return rs.A.filter}},{key:"searchIconHtml",get:function(){return rs.A.magnifyingGlass}},{key:"queryData",get:function(){return Cr(Fr,this)}},{key:"textFilter",get:function(){return Cr(Dr,this)}},{key:"clearTextFilter",value:function(){Cr(Dr,this).call(this,null),Cr(Br,this).call(this,!0)}},{key:"textFilterHasFocus",get:function(){return Cr(Br,this)}},{key:"textFilterPlaceholder",get:function(){return Cr(Rr,this)}},{key:"textFilterMaxLength",get:function(){return 50}}])}(),Ur=new WeakMap,Hr=function(){return(0,j.A)(function e(n){(0,B.A)(this,e),Tr(this,Ur,void 0),Sr(Ur,this,n)},[{key:"filters",get:function(){return Cr(Ur,this)}}])}(),Vr=new WeakMap,Gr=new WeakMap,zr=function(){return(0,j.A)(function e(n){var t=this;(0,B.A)(this,e),Tr(this,Vr,void 0),Tr(this,Gr,p().observable(!0)),this.hue=p().pureComputed(function(){return(0,Ea.KI)(p().unwrap(t.category).colour).h}),Sr(Vr,this,n)},[{key:"category",get:function(){return Cr(Vr,this)}},{key:"isSelected",get:function(){return Cr(Gr,this)}},{key:"toggle",value:function(){this.isSelected(!this.isSelected())}},{key:"categoryKey",get:function(){return this.category.name.toLowerCase().replace(" ","-")}}])}();p().components.register("inbox-filters",{viewModel:{createViewModel:function(e,n){var t=e.filters;return t.element(n.element),t.textFilterPlaceholder("Search by keywords, pupils, parents, dates, file names, â¦"),t}},template:'\n <div class="search-filter" data-bind="css: { hasFocus: textFilterHasFocus, hasValue: textFilter }">\n <label for="message-text-filter">{{{searchIconHtml}}}</label>\n <input type="text" spellcheck="true" class="filterInput" id="message-text-filter" autocomplete="off"\n data-bind="\n textInput: textFilter,\n attr: { placeholder: textFilterPlaceholder, maxlength: textFilterMaxLength},\n hasFocus: textFilterHasFocus,\n ">\n <a class="clear" data-bind="click: clearTextFilter">'.concat(rs.A.clear,'</a>\n <div data-bind="tooltip: {position:\'above\', mouseOpenDelay: 1000}">Clear</div>\n </div>\n <div class="category-filters">\n {{{filterIconHtml}}}\n {{#foreach categoryFilterGroups}}\n <filter-group data-bind="foreach: filters">\n <a data-bind="click: toggle, style: { \'--hue\': hue }">\n <div data-bind="class: categoryKey, css: { isSelected: isSelected }">').concat(rs.A.chunkyTick,'</div>\n <div data-bind="tooltip: { position:\'above\', mouseOpenDelay: 150 }">{{category.name}}s</div>\n </a>\n </filter-group>\n {{/foreach}}\n <a class="toggle" data-bind="click: toggleAllCategories">{{toggleLinkLabel}}</a>\n </div>\n ')});var Yr=t(25315),_r=t.p+"121a999716657d89cadd.png",Kr="/"===(null==_r?void 0:_r[0])||"https"===(null==_r?void 0:_r.slice(0,5))?_r:location.origin+_r,Jr=new Yr.A.Cache(32);function Xr(){var e;return"granted"===(null===(e=window.Notification)||void 0===e?void 0:e.permission)}function Qr(e){var n=new Date;n.setTime(n.getTime()+72e5),Jr.setItem(e.notificationId,e,{expirationAbsolute:n})}var Zr={messages:[],changeEventId:null,timeoutId:null};function eM(){var e,n,t;Zr.timeoutId&&clearTimeout(Zr.timeoutId),Xr()&&(Zr.messages.length<2?Zr.messages.forEac
1h(function(e){return function(e){var n;n=e.subject?e.subject:0==e.relatesTo.length?"No subject":1==e.relatesTo.length?e.relatesTo[0].name+(e.relatesTo[0].class?", ".concat(e.relatesTo[0].class.name):""):"About multiple pupils";var t=new Notification(n,{icon:Kr,body:e.summaryText()});t.onclick=function(){tM(e.id),window.focus();var n=function(){M()("inbox-panel").scrollTop(0),M()(document).trigger("select-inbox-item",{inboxItemId:e.id})};"messages"===O.section()[0]?n():M()(document).trigger("goto",[O.schoolPath("messages"),{onLoad:n}])},t.notificationId=e.id,Qr(t)}(e)}):(e=Zr.messages,n=(0,_e.Zr)((0,_e.pz)(e.length)),(t=new Notification("".concat(e.length," New Unread Messages"),{icon:Kr,body:"".concat(n," messages are waiting in your inbox.")})).notificationId=(0,Aa.A)(),t.onclick=function(){tM(t.notificationId),window.focus(),"messages"===O.section()[0]?M()("inbox-panel").scrollTop(0):M()(document).trigger("goto",[O.schoolPath("messages")])},Qr(t))),nM()}function nM(){Zr.timeoutId&&clearTimeout(Zr.timeoutId),Zr.messages=[],Zr.changeEventId=null,Zr.timeoutId=null}function tM(e){var n=Jr.getItem(e);n&&(n.close(),Jr.setItem(e,null,{expirationSliding:1,priority:1}))}O.school.subscribe(nM);var oM;p().components.register("message-centre",{viewModel:{createViewModel:function(){return oM.isActive(!0),oM}},template:'<main-content>\n <header-pane>\n <inbox-header-panel>\n <h2>Messages</h2>\n </inbox-header-panel>\n <inbox-item-header-panel>\n {{#if messageCreationEnabled}}\n {{#if showNewMessagePane() && !isSent()}}\n <h2>Create Your Message</h2>\n <a href="#" data-bind="click: cancelNewMessage">Cancel</a>\n {{/if}}\n {{#if isSent() || !showNewMessagePane()}}\n <button class="button button-link newMessageButton" data-bind="click: newMessage">\n <span>New Messageâ¦</span>\n </button>\n {{/if}}\n {{/if}}\n </inbox-item-header-panel>\n </header-pane>\n <main-pane data-bind="autoHeight: {height: height, change: heightChange}">\n <inbox-panel data-bind="onScrollToBottom: getInbox, correctMouseScroll: {}">\n <inbox-items data-bind="foreach: {data: items, afterAdd: addItem, beforeRemove: removeItem}">\n <inbox-item data-bind="css: {unread: !read(), sel: selected},\n click: select">\n <category-marker data-bind="style: categoryMarkerStyles"></category-marker>\n <inbox-item-about>\n <div class="subject-line">\n <span>\n {{#if $data.subject}}<span data-bind="highlight: {\n text: subject,\n terms: $component.searchTerms,\n }"></span>{{/if}}\n {{#ifnot $data.subject}}\n {{#if relatesTo.length == 0}}No subject{{/if}}\n {{#if relatesTo.length > 0}}\n <relates-to-name><span data-bind="highlight: {\n text: relatesTo[0].name,\n terms: $component.searchTerms,\n }"></span></relates-to-name>\x3c!--\n --\x3e{{#if relatesTo[0].class}},\n <relates-to-class><span data-bind="highlight: {\n text: relatesTo[0].class.name,\n terms: $component.searchTerms,\n }"></span></relates-to-class>{{/if}}\x3c!--\n --\x3e{{#if relatesTo.length > 1}}, â¦{{/if}}\n {{/if}}\n {{/ifnot}}\n </span>\n </div>\n <dot data-bind="css: {flagged: schoolFlag}">\n <svg height="12" width="12" viewBox="0 0 12 12">\n <circle cx="6" cy="6" r="5" />\n </svg>\n </dot>\n </inbox-item-about>\n <summaryText><span data-bind="highlight: {\n text: summaryText,\n terms: $component.searchTerms,\n }"></span></summaryText>\n <sent>
1\n <span data-bind="moment: {\n value: sent,\n format: $parent.sentTimeFormat,\n }">\n </span><span data-bind="moment: {\n value: sent,\n calendar: $parent.sentCal,\n searchTerms: $parent.searchTerms,\n }"></span>\n <sent>\n </inbox-item>\n </inbox-items>\n <more>\n {{#if gettingInbox}}<spinner class="dark"></spinner>{{/if}}\n {{#if noMore}}\n â {{#if items().length}}End{{/if}}\n {{#ifnot items().length}}No messages{{/ifnot}} â\n {{/if}}\n </more>\n </inbox-panel>\n <inbox-item-panel>\n <new-message params="visible: showNewMessagePane, isSent: isSent, showFilters: showFilters"></new-message>\n {{#ifnot showNewMessagePane}}\n {{#ifnot itemId}}\n <no-sel class="bgLayer">\n {{#if items().length}}<span>Select an item to the left to see it here.</span>{{/if}}\n </no-sel>\n {{/if}}\n {{#if itemId}}\n <inbox-item-detail params="item: item, searchTerms: searchTerms"></inbox-item-detail>\n {{/if}}\n {{/if}}\n </inbox-item-panel>\n </main-pane>\n </main-content>\n {{#if showFilters}}\n <main-content class="inboxFilters">\n <inbox-filters params="filters: filters"></inbox-filters>\n </main-content>\n {{/if}}'});var iM={init:function(){var e=(0,D.$)("item"),n={};n.isActive=p().observable(),n.sentCal=vt,n.sentTimeFormat=gt,n.items=p().observableArray(),n.gettingInbox=p().observable(),n.isFiltering=p().observable(),n.noM
1ore=p().observable(),n.itemId=p().observable(),n.item=p().computed(function(){var e=n.itemId();return c.Ay.find(n.items(),function(n){return n.id===e})}),n.messageCreationEnabled=p().pureComputed(function(){var e;return null===(e=fe())||void 0===e?void 0:e.hasCurrentPupilList}),n.showNewMessagePane=p().observable(!1),n.cancelNewMessage=function(){M()(document).trigger("messages.reset-new-message"),n.showNewMessagePane(!1)},n.filters=new $r(O.categories),n.showFilters=p().observable(!0),n.isSent=p().observable(),n.searchTerms=p().observable();var t=!1,o=null,i=(new Date).getTime(),a=function(t){t.category=c.Ay.find(O.categories(),function(e){return e.id==t.categoryId}),t.selected=p().computed(function(){return n.itemId()===t.id}),t.select=function(){e=0,n.itemId(t.id),n.showNewMessagePane(!1)},t.sent=p().observable(t.sent),t.read=p().observable(t.read),t.schoolFlag=p().observable(t.schoolFlag),t.summaryText=p().observable(t.summaryText),t.categoryMarkerStyles={background:"#"+t.category.colourRGB,"border-color":"#"+t.category.colourRGB},c.Ay.each(t.relatesTo,function(e){e.dependentId?(e.matchStatus=p().observable(e.matchStatus),e.nameAndClass=e.name+(e.class?" (".concat(e.class.name,")"):""),e.profilePicUrl=(0,ht.t)(e.dependentId,e.profilePicInfo),e.id=e.dependentId):e.id=e.pupilId})},r=function(){if(s.m.school()){o&&clearTimeout(o);var e={after:i},t=n.filters.queryData();c.Ay.extend(e,t);var a=n.item();a&&(e.itemId=a.id);y.getChanges(s.m.school().id,e,function(e){i=e.timestamp;var n=(0,Aa.A)();c.Ay.each(e.events,function(e){e.type="change",e.changeEventId=n,e.appliedFilters=t,M()(document).trigger(e)}),l()},l)}},l=function(){o&&clearTimeout(o),o=setTimeout(r,2e4)};function d(e){return!!c.Ay.any(n.items(),function(n){return n.id===e})&&(n.itemId(e),!0)}M()(document).on("change",function(e){switch(e.typeId){case 201:var t,o=e.item;a(o);var i=c.Ay.find(n.items(),function(e){return e.id===o.id});if(i){if(!(i.sent()<o.sent()))return;n.items.remove(i)}if(n.filters.queryData()===e.appliedFilters){var r=n.items();r.push(o),n.items(c.Ay.sortBy(r,function(e){return-e.sent()}))}var l=n.itemId();
1o.id===l&&M()("inbox-panel").scrollTop(0),(null===(t=e.item.sender.user)||void 0===t?void 0:t.id)===s.m.user().id&&e.item.sender.school&&e.item.sender.school.id===s.m.school().externalId||function(e,n){Xr()&&(n!==Zr.changeEventId&&eM(),Zr.changeEventId=n,Zr.messages.push(e),Zr.timeoutId=setTimeout(function(){Zr.timeoutId=null,eM()},300))}(o,e.changeEventId);break;case 211:var d=c.Ay.find(n.items(),function(n){return n.id===e.itemId});d&&d.read(e.time);break;case 221:var u=c.Ay.find(n.items(),function(n){return n.id===e.threadId});u&&u.schoolFlag(e.flag);break;case 250:s.m.unread(e.unread)}});var u=null;function A(e,t){c.Ay.each(n.items(),function(n){var o,i=c.Ay.filter(n.relatesTo,function(n){return n.dependentId===e.dependentId});c.Ay.each(i,function(e){return e.matchStatus(t?"postponed":"rejected")}),(null===(o=n.sender.user)||void 0===o?void 0:o.id)===e.userId&&c.Ay.each(n.relatesTo,function(e){e.pupilId=void 0,e.matchStatus("pending")})})}n.getInbox=function(o){if(n.isFiltering(!!o),!n.noMore()){var r,A={n:Math.ceil(M()(window).height()/58)};(r=n.items()).length&&(A.before=c.Ay.last(r).sent());var p=n.filters.queryData();u=p,c.Ay.extend(A,u);y.getInbox(s.m.school().id,A,n.gettingInbox,function(o){if(p===u){i=o.timestamp,n.noMore(o.items.length<A.n),c.Ay.each(o.items,a),r=n.items();var M=c.Ay.reduce(o.items,function(e,n){var t=c.Ay.find(r,function(e){return e.id===n.id});return t?t.sent()<n.sent()&&(r=c.Ay.without(r,t),e.push(n)):e.push(n),e},[]);n.items(c.Ay.sortBy(r.concat(M),function(e){return-e.sent()})),t=!0,s.m.unread(o.unreadMessages),l(),e&&(d(e)||n.noMore()?e=0:n.getInbox())}})}},M()(document).on("contactMatched",function(e,t){c.Ay.each(n.items(),function(e){c.Ay.each(t.matchedDependents,function(n){var t=c.Ay.filter(e.relatesTo,function(e){return e.dependentId===n});c.Ay.each(t,function(e){return e.matchStatus("ok")})})})}),M()(document).on("pupilMatched",function(e,t){c.Ay.each(n.items(),function(e){var n=c.Ay.filter(e.relatesTo,function(e){return e.dependentId===t.dependentId});c.Ay.each(n,function(e){e.pupilId=t.pupilId,e.matchStatus("ok")})})}),M()(document).on("matchPostponed",function(e,n){A(n,!0)}),M()(document).on("matchRejected",function(e,n){A(n,!1)}),n.newMessage=function(){n.resetNewMessage(),n.showNewMessagePane(!0)},n.resetNewMessage=function(){M()(document).trigger("messages.reset-new-message"),n.itemId(void 0)};var q=function(){return window.setTimeout(function(){return M()(document).trigger("auto-height-recalculate")},1)};function m(){n.items([]),n.itemId(void 0),n.noMore(!1),t=!1}ua.headerHeight.subscribe(q),n.showFilters.subscribe(q),n.height=function(e,t){var o=M()(e).offset().top,i=n.showFilters()?M()(n.filters.element()).height():0,a=ua.assistantInputBarHeight();return Math.max(t-o-a-i-5,200)},n.heightChange=function(){var e=M()("inbox-panel");t&&e.length&&e.scrollTop()+e.innerHeight()>=e[0].scrollHeight&&n.getInbox()},p().bindingHandlers.onScrollToBottom={update:function(e,n){var t=p().unwrap(n());M()(e).off("scroll.os2b").on("scroll.os2b",function(){M()(this).scrollTop()+M()(this).innerHeight()+5>=this.scrollHeight&&t()})}},n.addItem=function(e){if(!n.gettingInbox()&&!n.isFiltering())return M()(e).hide().slideDown(300)},n.removeItem=function(e){n.isFiltering()?M()(e).remove():M()(e).slideUp(300,function(){M()(e).remove()})},M()(document).on("change-alert",function(){r()}),M()(document).on("select-inbox-item",function(o,i){var a;(a=i.inboxItemId)&&(d(a)?e=0:(e=a,!t||n.gettingInbox()||n.noMore()||n.getInbox())),n.showNewMessagePane(!1)}),M()(document).on("messages.prefill-new-message",function(e,t){M()(document).trigger("goto",[O.schoolPath("messages"),{onLoad:function(){n.newMessage(),setTimeout(function(){M()(document).trigger("messages.new-prefilled",[t])},1)}}])}),M()(document).on("messages.trigger-new-message",function(){M()(document).trigger("goto",[O.schoolPath("messages"),{onLoad:function(){n.newMessage()}}])}),M()(document).on("messages.load-template",function(e,t){M()(document).trigger("goto",[O.schoolPath("messages"),{onLoad:function(){n.showNewMessagePane(!1),n.resetNewMessage(),setTimeout(function(){M()(document).trigger("messages.new-from-template",[t])},1)}}])}),s.m.school.subscribe(function(e){m(),c.Ay.contains(e.sections,"messages")?(window.Notification&&"granted"!==Notification.permission&&setTimeout(Notification.requestPermission,2e3),n.isActive()?n.getInbox():r()):o&&clearTimeout(o)}),n.showNewMessagePane.subscribe(function(e){n.showFilters(!e),e&&n.filters.reset()}),n.itemId.subscribeBeforeAndAfter(function(e,n){e!==n&&tM(n)}
1),n.filters.queryData.subscribe(function(e){n.searchTerms((e.search||"").split(/ +/).filter(function(e){return""!==e})),n.isActive()&&(m(),n.getInbox(!0))}),n.isActive.subscribe(function(e){e&&!n.gettingInbox()&&!t&&O.school()&&n.getInbox()}),n.dispose=function(){return n.isActive(!1)},oM=n}},aM=t(46378);t(62391),t(29628),t(96430);p().components.register("pt-school-feedback-box",{template:"\n Studybugs Parent Time is a new product.\n Weâd love your <school-enquiry-popup params=\"kind: 'feedback', label: 'feedback'\"></school-enquiry-popup>\n on it, good or bad!"});var sM=t(12001),rM=t(73212),MM=y.schoolAPIPath;function cM(e,n,t){f.A.get({url:"".concat(MM(e),"/pts/topics").concat((0,h.yD)(n)),success:t})}function lM(e,n,t){f.A.get({url:"".concat(MM(e),"/pts/slots").concat((0,h.yD)(n)),success:t})}function dM(e,n,t){f.A.get({url:"".concat(MM(e),"/pts/dates").concat((0,h.yD)(n)),success:t})}function uM(e){return AM.apply(this,arguments)}function AM(){return(AM=(0,o.A)(a().mark(function e(n){var t,o,i,s,r;return a().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.firstDay,o=n.lastDay,i=n.selectedStaffMembers,s={from:t.format(W.F.dateFormatMomentJs),to:o.format(W.F.dateFormatMomentJs)},i.length&&(s.hostids=i.map(function(e){return e.id})),r=new Promise(function(e){dM(O.school().id,s,function(n){e(c.Ay.map(n,function(e){return new aM.R({date:H()(e.date)})}))})}),e.next=1,r;case 1:return e.abrupt("return",e.sent);case 2:case"end":return e.stop()}},e)}))).apply(this,arguments)}function pM(e){return qM.apply(this,arguments)}function qM(){return(qM=(0,o.A)(a().mark(function e(n){var t,o,i,s,r,M,l,d;return a().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.after,o=n.before,i=n.n,s=n.selectedStaffMembers,r=(t||o).format(W.F.dateFormatMomentJs),M=(t||o).format(W.F.timeFormat),(l={time:M,n:i})[t?"from":"to"]=r,s.length&&(l.hostids=s.map(function(e){return e.id})),d=new Promise(function(e){lM(O.school().id,l,function(n){var t=c.Ay.map(n.slots,function(e){var n=H()(e.startTime),t=n.clone().add(e.durationMins,"m");return new sM.Jh({id:e.id,time:n,end:t,component:{name:"pts-slot-event",data:new rM.jl(e)}})});e(c.Ay.flatten(t))})}),e.next=1,d;case 1:return e.abrupt("return",e.sent);case 2:case"end":return e.stop()}},e)}))).apply(this,arguments)}function mM(){return mM=(0,o.A)(a().mark(function e(){var n;return a().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=new Promise(function(e){var n,t;n=O.school().id,t=function(n){e(n.status)},f.A.get({url:"".concat(MM(n),"/pts/hastopics"),success:t})}),e.next=1,n;case 1:return e.abrupt("return",e.sent);case 2:case"end":return e.stop()}},e)})),mM.apply(this,arguments)}function fM(){return(fM=(0,o.A)(a().mark(function e(n){var t;return a().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=new Promise(function(e){cM(O.school().id,n,function(n){e(c.Ay.map(n,function(e){return new rM.m8({id:e.id,name:e.name})}))})}),e.next=1,t;case 1:return e.abrupt("return",e.sent);case 2:case"end":return e.stop()}},e)}))).apply(this,arguments)}var hM=t(75719);t(56717);p().components.register("pt-verification",{viewModel:function(e){var n,t=e.booking,o=null===(n=t.dependent)||void 0===n?void 0:n.verificationInfo,i=!!o,a=t.booker||{};a.email=null==o?void 0:o.bookerEmail,a.profilePicUrl=(0,ht.t)(a.id,null==o?void 0:o.bookerProfilePicInfo),a.profilePicInfo=null==o?void 0:o.bookerProfilePicInfo;var s=t.dependent||{};s.profilePicUrl=(0,ht.t)(s.id,null==o?void 0:o.dependentProfilePicInfo,!0),s.profilePicInfo=null==o?void 0:o.dependentProfilePicInfo;var r=p().observable();return i&&o.verified&&r({time:o.verified,by:o.verifiedBy}
1),M()(document).on("verified.pt",function(e,n){n.dependentId===s.id&&a.id===n.parentId&&(n.verified?r({dependentId:n.dependentId,time:new Date,by:O.user().fullName()}):r(0))}),{show:i,dependent:s,parent:a,verified:r,globals:O,dispose:function(){M()(document).off("verified.pt")}}},template:'\n {{#if show}}\n {{#if verified}}\n <span>The identity of this person has been\n <verify params="dependent: dependent, parent: parent, verified: verified">verified</verify>.</span>\n {{/if}}\n {{#ifnot verified}}\n <match-warning>\n <alert-icon>{{{globals.schoolIcons.alert}}}</alert-icon>\n This person has not been verified as the parent or guardian of this child.\n <verify params="dependent: dependent, parent: parent, verified: verified">Verify Now</verify>\n </match-warning>\n {{/if}}\n {{/if}}'}),p().components.register("pt-match-status",{viewModel:function(e){var n,t,o,i,a=e.booking,s="",r=(null===(n=a.booker)||void 0===n?void 0:n.matchStatus)||"ok",M=(null===(t=a.dependent)||void 0===t?void 0:t.matchStatus)||"ok";"rejected"===r?s="This parent has been marked as â".concat(ba.userRejectionText,"â."):"rejected"===M?s="This child has been marked as â".concat(ba.dependentRejectionText,"â."):"postponed"===r?s="This parent has been marked as â".concat(ba.userPostponeText(),"â."):"postponed"===M?s="This child has been marked as â".concat(ba.dependentRejectionText,"â."):"pending"!==r&&"pending"!==M||(s="This parentâs details donât match with your records in ".concat(ge(),"."));var c=(null===(o=a.booker)||void 0===o?void 0:o.name)||(null===(i=a.dependent)||void 0===i?void 0:i.name);return{matchText:s,usersLink:O.schoolPath("users?q=".concat(encodeURIComponent(c))),globals:O,coreIcons:Gt.Ay}},template:'\n {{#if matchText}}\n <match-warning><alert-icon>{{{coreIcons.alert}}}</alert-icon>\n <p>{{matchText}} <a data-bind="goto: usersLink">Review here</a></p></match-warning>\n {{/if}}'}),p().components.register("pts-slot-event",{viewModel:function(e){var n=e.data,t=p().pureComputed(function(){return e.time.format(hM.D)}),o=O.school().hasPtAdminAccess,i=p().pureComputed(function(){return s.m.user().fullName()}),a=n.host.isLoggedInUser?"Me":n.host.name;return{isAdmin:o,time:t,data:n,edit:function(e,t){if(!!(n.booking||n.hasFinished))return!0;M()(document).trigger("editSlot",[{slot:n}]),t.stopPropagation()},remove:function(e,t){M()(document).trigger("removeSlot",[{slot:n}]),t.stopPropagation()},userFullName:i,hostName:a,orgIcons:Yn.Ay,schoolIcons:ft}},template:'\n <div data-bind="click: edit">\n <top-line>\n <cal-event-type>Parent Time</cal-event-type>\n {{#if isAdmin}}<pt-slot-host>({{hostName}})</pt-slot-host>{{/if}}\n <pt-slot-time>{{time}}</pt-slot-time>\n <pt-slot-duration>{{data.duration}} minutes</pt-slot-duration>\n </top-line>\n <hover-actions>\n {{#if data.booking}}\n <join-link params="{slot: data}"></join-link>\n {{/if}}\n {{#if !data.hasFinished}}\n <a href="#" data-bind="click: remove">{{{schoolIcons.clear}}}</a>\n <div data-bind="tooltip: {position: \'above\'}">Remove</div>\n {{/if}}\n </hover-actions>\n <booking-details>\n {{#if data.hasFinished && !data.booking}}Closed{{/if}}\n {{#if data.hasTopicTags}}\n <topic-tag-pills>\n {{#foreach data.topicTagNames}}\n <topic-tag-pill>\n <pill-icon>{{{$parent.schoolIcons.tag}}}</pill-icon>\n <pill-label>{{$data}}</pill-label>\n </topic-tag-pill>\n {{/foreach}}\n </topic-tag-pills>\n {{/if}}\n {{#if !data.hasFinished && !data.booking}}<open-to>{{data.openToSentence}}</open-to>{{/if}}\n {{#if data.booking}}\n <booked-by>\n Booked by\n <span>\n <entity-pill>\n <pill-icon>{{{orgIcons.person}}}</pill-icon>\n <pill-label>{{data.booking.getBookerDisplayName(userFullName())}}</pill-label>\n </entity-pill>\n </span>\n {{data.booking.created.fromNow()}}\n {{#if data.booking.dependent}}\n â
1about\n <span>\n <entity-pill>\n <pill-icon>{{{orgIcons.pupil}}}</pill-icon>\n <pill-label>\n <pupil-name>{{data.booking.dependent.name}}</pupil-name>{{#if data.booking.dependent.className}},\n <class-name>{{data.booking.dependent.className}}</class-name>{{/if}}\n </pill-label>\n </entity-pill>\n </span>\n {{/if}}\n <pt-verification params="{booking: data.booking}"></pt-verification>\n <pt-match-status params="{booking: data.booking}"></pt-match-status>\n {{#if data?.booking.subject}}\n <booking-subject>{{data.booking.subject}}</booking-subject>\n {{/if}}\n </booked-by>\n {{/if}}\n </booking-details>\n </div>'});t(32637),t(10740);var WM={"date:missing":"Need a date!","date:notUnderstood":"Try eg 25 Dec, 25/12, today, Mon","date:past":"Mustnât be in the past!","time:missing":"Need a time!","time:notUnderstood":"Try eg 8am, 3.30pm, 15:30 or 1530","time:past":"Mustnât be in the past!","time:clashes":"Clashes with an existing slot!","duration:missing":"Need a duration!","duration:notUnderstood":"Must be a whole number","duration:tooShort":"Must be ".concat(3," minutes or more!"),"duration:tooLong":"Must be ".concat(120," minutes or less!"),"message:tooLong":"Too long!",slotBooked:"Unable to change â slot booked by a parent","topicTags:unrecognisedText":"Unrecognised text"};function gM(e){if(e&&e.length>120)return"tooLong"}var vM={"staffMember:unrecognisedText":"Unrecognised text","staffMember:missing":"Need a staff member!"};var bM={"groups:unrecognisedText":"Unrecognised text"};var yM=t(54615);function wM(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function kM(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?wM(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):wM(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function xM(){return(xM=(0,o.A)(a().mark(function e(n){var t;return a().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=new Promise(function(e){Qi(O.school().id,n,function(n){e(c.Ay.map(n,function(e){return new yM.R(kM({name:e.name,userId:e.userId,staffMembershipId:e.staffMembershipId},e.isLoggedInUser?{isLoggedInUser:!0}:{}))}))})}),e.next=1,t;case 1:return e.abrupt("return",e.sent);case 2:case"end":return e.stop()}},e)}))).apply(this,arguments)}function TM(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function SM(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?TM(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):TM(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}p().components.register("staff-member-item",{viewModel:function(e){var n=e.data().item;return{name:n.isLoggedInUser?"Me":n.name,icon:Yn.Ay.person}},template:"\n <entity-pill>\n <pill-icon>{{{icon}}}</pill-icon><pill-label>{{name}}</pill-label>\n </entity-pill>"}),p().components.register("staff-member-suggestions",{template:"\n {{#if suggestionsAbove}}".concat((0,Ba.A)(),'{{/if}}\n {{#foreach items}}\n <span class="suggestion"\n data-bind="event: {mousedown: select, mouseover: highlight},\n css: {highlighted: highlighted}">\n <staff-member-match>\n <staff-member-name data-bind="highlight: {text: (suggestion.isLoggedInUser ? \'Me\' : suggestion.name),\n terms: $component.queryTerms}"></staff-member-name>\n </staff-member-match>\n </span>\n {{/foreach}}
1\n {{#ifnot suggestionsAbove}}').concat((0,Ba.A)(),"{{/ifnot}}")}),p().components.register("staff-members-field",{viewModel:function(e){var n=e.field,t=e.placeholderText,o=e.suggestionsAbove||!1,i=e.highlightFirst||!1,a=e.maxSelectedItems||0,s=new(p().subscribable);return n.value.subscribe(function(){(0,Ri.k)()}),{field:n,clearIcon:rs.A.clear,clearField:function(){s.notifySubscribers({},"clear")},getStaff:function(e,t){var o=n.value();(function(e){return xM.apply(this,arguments)})(SM(SM({},e),{},{ignoreIds:o.map(function(e){return e.userId})})).then(function(e){return t(e)})},placeholderText:t,suggestionsAbove:o,autocompletePostbox:s,maxSelectedItems:a,highlightFirst:i}},template:'\n <staff-member-field data-bind="css: { hasValue: field.data.hasValue }">\n <staff-member-field-item>\n <sw-multi-autocomplete\n class="filterInput"\n params="query: getStaff,\n selectedItems: field.value,\n hasUnrecognisedText: field.data.hasUnrecognisedText,\n textSelectionItemIds: field.data.textSelectionItemIds,\n hasFocus: field.hasFocus,\n hasValue: field.data.hasValue,\n suggestionsComponentName: \'staff-member-suggestions\',\n itemComponentName: \'staff-member-item\',\n placeholderText: placeholderText,\n suggestionsAbove: suggestionsAbove,\n highlightFirst: highlightFirst,\n maxSelectedItems: maxSelectedItems,\n autocompletePostbox: autocompletePostbox"></sw-multi-autocomplete>\n </staff-member-field-item>\n <a href="#" class="clear" data-bind="click: clearField">{{{clearIcon}}}</a>\n <div data-bind="tooltip: {position: \'above\', mouseOpenDelay: 200}">Clear</div>\n </staff-member-field>\n <staff-member-field-footer>\n <footer-spacer></footer-spacer>\n <footer-body>\n {{#if field.showFailure}}\n <span class="error" data-bind="text: field.validationMessage"></span>\n {{/if}}\n </footer-body>\n </staff-member-field-footer>'});var CM={createStaffMembersField:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],n=p().observable(),t=function(e){return function(n){return n&&0!==n.length?e()?"unrecognisedText":void 0:"missing"}}(n),o=e?"staffMember":"",i=new Ye._I(o,t,[]),a=p().pureComputed(function(){return i.value(
1).length}),s=p().pureComputed(function(){return i.hasFocus()||i.value().length});return i.data.hasUnrecognisedText=n,i.data.textSelectionItemIds=p().observableArray(),i.data.hasSelectedItem=a,i.data.hasFocusOrSelectedItem=s,i.data.hasValue=p().observable(),i}},PM=y.schoolAPIPath;function IM(e,n,t){f.A.get({url:"".concat(PM(e),"/pupilgroups").concat((0,h.yD)(n)),success:t})}var OM=t(87498);function LM(){return(LM=(0,o.A)(a().mark(function e(n){var t;return a().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=new Promise(function(e){IM(O.school().id,n,function(n){e(c.Ay.map(n,function(e){return new OM.Y({id:e.id,name:e.name})}))})}),e.next=1,t;case 1:return e.abrupt("return",e.sent);case 2:case"end":return e.stop()}},e)}))).apply(this,arguments)}function EM(){return EM=(0,o.A)(a().mark(function e(){var n;return a().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=new Promise(function(e){var n,t;n=O.school().id,t=function(n){e(n.status)},f.A.get({url:"".concat(PM(n),"/haspupilgroups"),success:t})}),e.next=1,n;case 1:return e.abrupt("return",e.sent);case 2:case"end":return e.stop()}},e)})),EM.apply(this,arguments)}p().components.register("group-item",{viewModel:function(e){return{name:e.data().item.name,icon:ft.group}},template:"\n <entity-pill>\n <pill-icon>{{{icon}}}</pill-icon><pill-label>{{name}}</pill-label>\n </entity-pill>"}),p().components.register("groups-suggestions",{template:'\n {{#foreach items}}\n <span class="suggestion"\n data-bind="event: {mousedown: select, mouseover: highlight},\n css: {highlighted: highlighted}">\n <group-match>\n <group-name data-bind="highlight: {text: suggestion.name,\n terms: $component.queryTerms}"></group-name>\n </group-match>\n </span>\n {{/foreach}}\n '.concat((0,Ba.A)())}),p().components.register("groups-field",{viewModel:function(e){var n=e.field,t=e.highlightFirst||!1,o=p().observable();(function(){return EM.apply(this,arguments)})().then(function(e){return o(e)});var i=p().observable("all");return i.subscribe(function(e){"all"===e&&n.value.removeAll()}),n.hasFocus.subscribe(function(e){e&&i("limit")}),n.value.subscribe(function(e){e&&e.length&&i("limit"),(0,Ri.k)()}),{field:n,highlightFirst:t,hasPupilGroups:o,getGroups:function(e,n){(function(e){return LM.apply(this,arguments)})(e).then(function(e){return n(e)})},openTo:i}},template:'\n {{#if hasPupilGroups}}\n <group-field>\n <div><label>\n <input type="radio" value="all" name="open-to" data-bind="checked: openTo" />\n <span class="check">'.concat(ft.radioButton,'</span>\n Open to all parents\n </label></div>\n <div><label>\n <input type="radio" value="limit" name="open-to" data-bind="checked: openTo" />\n <span class="check">').concat(ft.radioButton,'</span>\n Open to parents of pupils in:\n </label></div>\n <group-field-item>\n <sw-multi-autocomplete params="query: getGroups,\n selectedItems: field.value,\n hasUnrecognisedText: field.data.hasUnrecognisedText,\n textSelectionItemIds: field.data.textSelectionItemIds,\n hasFocus: field.hasFocus,\n highlightFirst: highlightFirst,\n suggestionsComponentName: \'groups-suggestions\',\n itemComponentName: \'group-item\'"></sw-multi-autocomplete>\n </group-field-item>\n </group-field>\n <group-field-footer>\n <footer-spacer></footer-spacer>\n <footer-body>\n {{#if field.showFailure}}\n <span class="error" data-bind="text: field.validationMessage"></span>\n {{/if}}\n </footer-body>\n </group-field-footer>\n {{/if}}')});var NM={createGroupsField:function(){var e=p().observable(),n=function(e){return function(){if(e())return"unrecognisedText"}}(e),t=new Ye._I("groups",n,[]);return t.data.hasUnrecognisedText=e,t.data.textSelectionItemIds=p().observableArray(),t}};
1p().components.register("topic-tag-item",{viewModel:function(e){return{name:e.data().item.name,icon:ft.tag}},template:"\n <entity-pill>\n <pill-icon>{{{icon}}}</pill-icon><pill-label>{{name}}</pill-label>\n </entity-pill>"}),p().components.register("topic-tags-suggestions",{template:'\n {{#foreach items}}\n <span class="suggestion"\n data-bind="event: {mousedown: select, mouseover: highlight},\n css: {highlighted: highlighted}">\n <topic-tag-match>\n <topic-tag-name data-bind="highlight: {text: suggestion.name,\n terms: $component.queryTerms}"></topic-tag-name>\n </topic-tag-match>\n </span>\n {{/foreach}}\n '.concat((0,Ba.A)())}),p().components.register("topic-tags-field",{viewModel:function(e){var n=e.field,t=e.highlightFirst||!1,o=p().observable();(function(){return mM.apply(this,arguments)})().then(function(e){return o(e)});var i=p().observable("all");return i.subscribe(function(e){"all"===e&&n.value.removeAll()}),n.hasFocus.subscribe(function(e){e&&i("limit")}),n.value.subscribe(function(e){e&&e.length&&i("limit"),(0,Ri.k)()}),{field:n,highlightFirst:t,hasTopicTags:o,getTopicTags:function(e,n){(function(e){return fM.apply(this,arguments)})(e).then(function(e){return n(e)})},openTo:i}},template:'\n {{#if hasTopicTags}}\n <topic-tag-field>\n <div><label>\n <input type="radio" value="all" name="topic" data-bind="checked: openTo" />\n <span class="check">'.concat(ft.radioButton,'</span>\n Any topic\n </label></div>\n <div><label>\n <input type="radio" value="limit" name="topic" data-bind="checked: openTo" />\n <span class="check">').concat(ft.radioButton,'</span>\n Limit to topics:\n </label></div>\n <topic-tag-field-item>\n <sw-multi-autocomplete params="query: getTopicTags,\n selectedItems: field.value,\n hasUnrecognisedText: field.data.hasUnrecognisedText,\n textSelectionItemIds: field.data.textSelectionItemIds,\n hasFocus: field.hasFocus,\n highlightFirst: highlightFirst,\n suggestionsComponentName: \'topic-tags-suggestions\',\n itemComponentName: \'topic-tag-item\'"></sw-multi-autocomplete>\n </topic-tag-field-item>\n </topic-tag-field>\n <topic-tag-field-footer>\n <footer-spacer></footer-spacer>\n <footer-body>\n {{#if field.showFailure}}\n <span class="error" data-bind="text: field.validationMessage"></span>\n {{/if}}\n </footer-body>\n </topic-tag-field-footer>\n {{/if}}')});var FM={createTopicTagsField:function(){var e=p().observable(),n=function(e){return function(){if(e())return"unrecognisedText"}}(e),t=new Ye._I("topicTags",n,[]);return t.data.hasUnrecognisedText=e,t.data.textSelectionItemIds=p().observableArray(),t}};function RM(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function DM(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?RM(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):RM(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}var BM=["LT","H:mm","Hmm","h.mma","h.mmA","ha","hA","h.mm a","h.mm A","h a","h A","h.mm","h","h:mma","h:mmA","h:mm a","h:mm A"],jM={};function $M(e){var n=Date.parse(e);if(n)return H()(n).startOf("day")}function UM(e){var n=H()(e.trim(),BM,!0);if(n.isValid())return n}function HM(e){var n=Number(e);if(Number.isInteger(n))return n}p().components.register("pt-edit-slot",{viewModel:function(){var e,n=p().observable(),t=p().observable(),o=O.
1school().hasPtAdminAccess,i=o?p().observable():void 0,a=p().observable(),s=p().pureComputed(function(){return(n()?"Edit":"Add")+" Parent Time Slot"}),r=o?CM.createStaffMembersField():void 0,l=null==r?void 0:r.data.hasSelectedItem,d=new Ye._I("date",function(e,n){return function(t){if(!t)return"missing";var o=e(t);return o?o.tz(n).isBefore(H()().startOf("day").tz(n))?"past":void 0:"notUnderstood"}}($M,O.school().timeZone),""),u=p().pureComputed(function(){return $M(d.value())}),A=new Ye._I("time",function(e,n,t){return function(o){if(!o)return"missing";var i=e(o);if(!i)return"notUnderstood";var a=n();return a&&a.isSame(H()().startOf("day"))&&H()().tz(t).hour(i.hour()).minute(i.minute()).second(i.second()).isBefore(H()().tz(t))?"past":void 0}}(UM,u,O.school().timeZone),""),q=new Ye._I("duration",(e=HM,function(n){if(!n)return"missing";var t=e(n);return void 0===t?"notUnderstood":t<3?"tooShort":t>120?"tooLong":void 0}),""),m=NM.createGroupsField(),h=FM.createTopicTagsField(),g=DM(DM(DM({},WM),bM),o?vM:{}),v=[d,A,q,m,h].concat((0,Ao.A)(o?[r]:[])),b=new Ye.qW(v,g);function y(){return n()?n().startTime:t()||jM.date}function w(){if(o){var e=null!==(t=n())&&void 0!==t&&t.host?[n().host]:i()||jM.staffMembers;r.value(e)}var t,a=y(),s=a?a.format("D MMM"):"";d.value(s);var M=function(){if(n())return n().startTime;var e=jM.date,t=jM.time;return e&&e.isSame(y())&&t?t.clone().add(10,"m"):t}(),c=M?M.format("HH:mm"):"";A.value(c);var l=n()?n().duration:jM.durationMins||7;q.value(l);var u=n()&&n().groups?n().groups:jM.groups||[];m.value(u);var p=n()&&n().topics?n().topics:jM.topics||[];h.value(p)}var k=p().observable(),x=p().pureComputed(function(){return b.treeIsValid()&&!k()}),T=p().pureComputed(function(){return n()?"Save Changes":"Add"}),S=p().observable(),C=p().observable(),P=[];function I(e,s){var r;(b.resetAll(),n(s.slot),t(s.date),o)&&((null==s||null===(r=s.selectedStaffMembers)||void 0===r?void 0:r.length)>1?i([]):i(s.selectedStaffMembers));w(),d.validationSuspended(!0),A.validationSuspended(!0),a(!0)}return P.push(p().computed(function(){b.treeIsValid(),S(!1),C(!1)})),P.push(C.subscribe(function(e){e&&M()(document).trigger("refreshCalendar")})),M()(document).on("editSlot",I),{isOpen:a,title:s,slot:n,isAdmin:o,staffMembersField:r,staffFieldHasSelectedItem:l,dateField:d,timeField:A,durationField:q,groupsField:m,topicTagsField:h,posting:k,postEnabled:x,postButtonLabel:T,post:function(){var e=o?r.value():[],t=e.map(function(e){return e.id}),i=o?t[0]:void 0,s=u(),l=UM(A.value()).tz(O.school().timeZone),d=HM(q.value()),p=m.value(),g=p.map(function(e){return e.id}),v=h.value(),y=v.map(function(e){return e.id}),w={startDate:s.format(W.F.dateFormatMomentJs),startTime:l.format(W.F.timeFormat),durationMins:d,groups:g,topics:y};o&&(w.hostId=i),n()&&(w.id=n().id),function(e,n,t,o){var i=n.id?"edit":"create";f.A.post({url:"".concat(MM(e),"/pts/").concat(i),data:JSON.stringify(n),success:t,failure:o})}(O.school().id,w,function(){a(!1);var n={date:s};null!=e&&e.length&&(n.staffMembers=e),M()(document).trigger("refreshCalendar",[n]),o&&(jM.staffMembers=e),jM.date=s,jM.time=l,jM.durationMins=d,jM.groups=p,jM.topics=v},function(e){var n=JSON.parse(e.responseText);if(n.failures){var t=b.processValidationResponse(n.failures);return c.Ay.find(t,function(e){return"slotBooked"===e.code})?(C("It looks like the slot was booked while you were here."),!1):c.Ay.find(t,function(e){return"slotNotFound"===e.code})?(C("It looks like the slot was removed while you were here."),!1):c.Ay.find(t,function(e){return"sessionEnded"===e.code})?(C("Sorry, that session has now ended and can no longer be edited."),!1):!!c.Ay.find(t,function(e){return"notAValidTime"===e.code})&&(C("That time doesnât appear to be valid."),!1)}S("Please try again.")})},postError:S,terminalError:C,dismiss:function(){a(!1)},dispose:function(){M()(document).off("editSlot",I),c.Ay.each(P,function(e){return e.dispose()})}}},template:'\n <div data-bind="popover: {isModal: true, dim: true, open: isOpen}">\n <div class="popoverBody">\n {{#if isOpen}}\n {{#ifnot terminalError}}\n <div class="popoverTitle">{{title}}</div>\n {{/ifnot}}\n {{#if terminalError}}\n <div class="popoverTitle">Sorry, no can do</div>\n {{/if}}\n <form class="body pt-edit-slot">\n {{#ifnot terminalError()}}\n {{#if isAdmin}}\n {{#ifnot slot}}\n <p class="staffMemberLabel">Staff Member</p>\n {{/ifnot}}\n <staff-members-field params="field: staffMembersField,\n highlightFirst: true,\n showClearIcon: staffFieldHasSelectedItem,\n maxSelectedItems: 1"></staff-members-field>\n {{/if}}\n <time-fields>\n {{#ifnot slot}}\n <p class="timeLabel">Time</p>\n {{/ifnot}}\n <date-field>
1\n <span class="textInput">\n <input type="text" spellcheck="false" placeholder="Day"\n data-bind="textInput: dateField.value,\n hasFocus: dateField.hasFocus"></input>\n </span>\n {{#if dateField.showFailure}}\n <p class="error" data-bind="text: dateField.validationMessage"></p>\n {{/if}}\n </date-field>\n <span class="join">at</span>\n <time-field>\n <span class="textInput">\n <input type="text" spellcheck="false" placeholder="Time"\n data-bind="textInput: timeField.value,\n hasFocus: timeField.hasFocus"></input>\n </span>\n {{#if timeField.showFailure}}\n <p class="error" data-bind="text: timeField.validationMessage"></p>\n {{/if}}\n </time-field>\n <span class="join">for</span>\n <duration-field>\n <span class="textInput">\n <input type="text" spellcheck="false"\n data-bind="textInput: durationField.value,\n hasFocus: durationField.hasFocus"></input>\n </span>\n {{#if durationField.showFailure}}\n <p class="error" data-bind="text: durationField.validationMessage"></p>\n {{/if}}\n </duration-field>\n <span class="join">minutes</span>\n </time-fields>\n <groups-field params="field: groupsField, highlightFirst: true,"></groups-field>\n <topic-tags-field params="field: topicTagsField, highlightFirst: true,"></topic-tags-field>\n <form-submit>\n <button class="post button button-primary"\n data-bind="click: post, enable: postEnabled">{{postButtonLabel}}</button>\n <div data-bind="tooltip: {position: \'below\', enable: postEnabled}">This will publish your Parent Time slot\n for parents to see and make bookings.</div>\n {{#if postError}}\n <p class="error">{{postError}}</p>\n {{/if}}\n </form-submit>\n {{/ifnot}}\n {{#if terminalError}}\n <p>{{terminalError}}</p>\n <button class="post" data-bind="click: dismiss">OK</button>\n {{/if}}\n </form>\n {{/if}}\n </div>\n </div>'}),p().components.register("pt-remove-slot",{viewModel:function(){var e=O.school().hasPtAdminAccess,n=p().observable(),t=p().observable(),o=new Ye._I("message",gM,"");o.charCount=p().pureComputed(function(){var e=o.value().length;return 0===e?"".concat(120," chars max"):"".concat(e," of ").concat(120," chars")});var i=new Ye.qW([o],WM),a=p().pureComputed(function(){var t,o=null===(t=n())||void 0===t?void 0:t.host.isLoggedInUser;return e&&n()&&!o?" for "+n().host.name:""}),s=p().observable(),r=p().pureComputed(function(){return i.treeIsValid()&&!s()}),l=p().observable(),d=p().observable(),u=[];function A(e,o){n(o.slot),i.resetAll(),t(!0)}return u.push(p().computed(function(){i.treeIsValid(),l(!1),d(!1)})),u.push(d.subscribe(function(e){e&&M()(document).trigger("refreshCalendar")})),M()(document).on("removeSlot",A),{isAdmin:e,slot:n,removedForMsg:a,isOpen:t,messageField:o,posting:s,postEnabled:r,post:function(){var a={id:n().id};e&&(a.hostId=n().host.id);var s=o.value();s&&s.trim().length&&(a.message=s.trim()),function(e,n,t,o){f.A.post({url:"".concat(MM(e),"/pts/delete"),data:JSON.stringify(n),success:t,failure:o})}(O.school().id,a,function(){t(!1),M()(document).trigger("refreshCalendar")},function(e){var n=JSON.parse(e.responseText);if(n.failures){var t=i.processValidationResponse(n.failures);return c.Ay.find(t,function(e){return"slotNotFound"===e.code})?(d("It looks like the slot was removed while you were here."),!1):!!c.Ay.find(t,function(e){return"sessionEnded"===e.code})&&(d("Sorry, that session has now ended and can no longer be removed."),!1)}l("Please try again.")})},postError:l,dismiss:function(){t(!1)},terminalError:d,dispose:function(){M()(document).off("removeSlot",A)}}},template:'\n <div data-bind="popover: {isModal: true, dim: true, open: isOpen}">\n <div class="popoverBody">\n {{#ifnot terminalError}}\n <div class="popoverTitle">Are You Sure?</div>\n {{/ifnot}}\n {{#if terminalError}}\n <div class="popoverTitle">Sorry, no can do</div>\n {{/if}}\n <form class="body pt-remove-slot pt-form">\n {{#ifnot terminalError}}\n {{#ifnot slot() && slot().booking}}\n <p>This slot will be removed{{removedForMsg}} and no longer visible to parents.</p>\n {{/ifnot}}\n {{#if slot() && slot().booking}}\n <p>This slot{{removedForMsg}} has now been booked by\n a parent ({{slot().booking.getBookerDisplayName()}}).</p>\n <p>If you remove it, weâll cancel their booking and let them know.</p>\n <message-field>\n <label for="ptSlotRemovalMessage">Would you like to pass on a message (optional)?</label>\n <textarea id="ptSlotRemovalMessage"\n data-bind="textInput: messageField.value,\n hasFocus: messageField.hasFocus,\n disable: posting"></textarea>\n <char-count>\n {{messageField.charCount}}\n </char-count>\n {{#if messageField.showFailure}}\n <p class="error" data-bind="text: messageField.validationMessage"></p>\n {{/if}}\n </message-field>\n {{/if}}\n <form-submit>\n <button class="post button button-primary"\n data-bind="click: post, enable: postEnabled">Yes, Remove It</button>\n <button class="cancel button button-secondary"\n data-bind="click: dismiss, disable: posting">No</button>\n {{#if postError}}\n <p class="error">{{postError}}</p>\n {{/if}}\n </form-submit>\n {{/ifnot}}\n {{#if terminalError}}\n <p>{{terminalError}}</p>\n <button class="post" data-bind="click: dismiss">OK</button>\n {{/if}}\n </form>\n </div>\n </div>'}),p().components.register("pt-staff-filter",{viewModel:function(e){var n=e.selectedStaffMembers,t=CM.createStaffMembersField(!1);new Ye.qW([t],vM);var o=t.data.hasFocusOrSelectedItem,i=p().pureComputed(function(){return t.value().length}),a=[];function s(e,n){null!=n&&n.staffMembers&&t.value(n.staffMembers)}return a.push(i.subscribe(function(){n(t.value())})),M()(document).on("staffMembersSelected",s),{staffMembersField:t,hasFocusOrSelectedItem:o,appIcons:rs.A,placeHolderText:"Filter by staff member",dispose:function(){M()(document).off("staffMembersSelected",s),c.Ay.each(a,function(e){return e.dispose()})}}},template:'\n <staff-filter>\n <filter-icon data-bind="css: { hasFocusOrSelectedItem: hasFocusOrSelectedItem }">\n <div class="icon">{{{appIcons.filter}}}</div>\n <div data-bind="tooltip: { position: \'above\', mouseOpenDelay: 100 }" class="assistant">\n {{{placeHolderText}}}\n </div>\n </filter-icon>\n <filter-input data-bind="css: {\n hasValue: staffMembersField.data.hasValue,\n hasFocus: staffMembersField.hasFocus\n }">\n <staff-members-field params="field: staffMembersField,\n placeholderText: placeHolderText,\n suggestionsAbove: true,\n highlightFirst: true"></staff-members-field>\n <filter-input>\n </staff-filter>'}),p().components.register("calendar-page",{viewModel:function(){var e=O.school().hasPtAdminAccess,n=p().observable(H()().startOf("day")),t=p().observableArray(),o=p().observable(M()("cal-event-list")),i=p().pureComputed(function(){var e=ua.headerHeight();return{top:"".concat(e,"px")}}),a=p().pureComputed(function(){var e=o()[0].getBoundingClientRect(),n=ua.assistantInputBarHeight();return{left:"".concat(e.x+25-4,"px"),width:"".concat(e.width-27,"px"),bottom:"".concat(n+11,"px")}});function s(){o(M()("cal-event-list"))}function r(e,o){if(n(o?o.date:n()),o&&o.staffMembers){var i=o.staffMembers;t(i),M()(document).trigger("staffMembersSelected",[{staffMembers:i}])}}return M()(window).on("resize",c.Ay.throttle(s)),M()(document).on("refreshCalendar",r),M()(document.body).addClass("calendarPage"),{isAdmin:e,selectedDate:n,selectedStaffMembers:t,getEventSummaries:uM,getEvents:pM,createSlot:function(e,o){var i=n(),a=t();M()(document).trigger("editSlot",[{date:i,selectedStaffMembers:a}]),o.stopPropagation()},monthViewStyles:i,staffFilterStyles:a,dispose:function(){M()(window).off("resize",s),M()(document).off("refreshCalendar",r),M()(document.body).removeClass("calendarPage")}}},template:'\n <main-content>\n <cal-layout>\n <layout-cell>\n <div data-bind="style: monthViewStyles">\n <month-name>
1{{selectedDate().format("MMMM YYYY")}}</month-name>\n <cal-month-view params="context: selectedStaffMembers,\n selectedDate: selectedDate,\n selectedStaffMembers: selectedStaffMembers,\n getEventSummaries: getEventSummaries"></cal-month-view>\n <a class="add" href="#" data-bind="click: createSlot">\n <svg viewBox="0 0 309 309">\n <circle cx="154.362" cy="154.362" r="154.362"/>\n <path d="M163.095,145.629L247.186,145.629L247.186,163.095L163.095,163.095L163.095,247.186L145.629,247.186L145.629,163.095L61.538,163.095L61.538,145.629L145.629,145.629L145.629,61.538L163.095,61.538L163.095,145.629Z"/>\n </svg>\n <div data-bind="tooltip: {position: \'below\'}">Add Parent Time Slot</div>\n </a>\n <pt-edit-slot></pt-edit-slot>\n <pt-remove-slot></pt-remove-slot>\n </div>\n </layout-cell>\n <layout-cell>\n <cal-event-list params="context: selectedStaffMembers,\n from: selectedDate,\n getEvents: getEvents,\n selectedStaffMembers: selectedStaffMembers"></cal-event-list>\n {{#if isAdmin}}\n <pt-staff-filter data-bind="style: staffFilterStyles" params="selectedStaffMembers: selectedStaffMembers">\n </pt-staff-filter>\n {{/if}}\n </layout-cell>\n </cal-layout>\n </main-content>'});t(35768);var VM=t(90551);p().components.register("schools-bugs-map",{viewModel:function(){return{initialLocation:new VM.a(O.school().location.latitude,O.school().location.longitude,6e4),headerHeight:ua.headerHeight,footerHeight:ua.assistantInputBarHeight}},template:'<portal-bugs-map params="initialLocation: initialLocation,\n headerHeight: headerHeight,\n footerHeight: footerHeight"></bugs-map>'}),p().bindingHandlers.activeHtml={init:function(){return{controlsDescendantBindings:!0}},update:function(e,n,t,o,i){var a=n(),s=p().utils.unwrapObservable(a);p().utils.setHtml(e,s),p().applyBindingsToDescendants(i,e)}};t(94908);
1p().bindingHandlers.itemMenuPositioner={update:function(e,n){n().trigger();window.setTimeout(function(){var n=M()(e).outerHeight();M()(e).find(".itemMenu").css("top","".concat(n,"px"))},1)}},p().components.register("dashboard-page",{viewModel:function(){var e,n,t,o=[],i={};function a(e){var n=H()(i.date()).tz(O.school().timeZone),t=c.Ay.map(e,function(e){return new wo(e.id,e.name,e.schoolClass.name,m.y.from(n),i.session().slotName)});M()(document).trigger("editRegisters",new go(t))}i.school=O.school,i.sessions=p().observableArray(),i.date=p().observable(new Date),i.session=p().observable(),i.sessionData=p().observable(),i.target=p().pureComputed(function(){var e;return null===(e=i.school())||void 0===e?void 0:e.attendanceTarget}),i.showSyncStatus=p().pureComputed(function(){var e;return null===(e=fe())||void 0===e||null===(e=e.mis)||void 0===e?void 0:e.supportsRegisterWrite}),i.selectAllChecked=p().pureComputed({read:function(){var e;return c.Ay.every(null===(e=i.sessionData())||void 0===e?void 0:e.items(),function(e){return e.isChecked()})},write:function(e){var n;return c.Ay.each(null===(n=i.sessionData())||void 0===n?void 0:n.items(),function(n){return n.isChecked(e)})}}),i.itemsSelected=p().pureComputed(function(){var e;return c.Ay.filter(null===(e=i.sessionData())||void 0===e?void 0:e.items(),function(e){return e.isChecked()})}),i.itemsSelText=p().pureComputed(function(){var e=i.itemsSelected().length;return"".concat(e," entr")+(1===e?"y":"ies")+" selected"}),i.postToRegButtonLabel=p().pureComputed(function(){return i.itemsSelected().length?"Edit Register":"Post to Register"}),i.clearSel=function(){return c.Ay.each(i.sessionData().items(),function(e){return e.isChecked(!1)})},i.postToRegister=function(e,n){a(c.Ay.map(i.itemsSelected(),function(e){return e.pupil})),n.stopPropagation()},i.postToRegisterEnabled=p().pureComputed(function(){return!ve()}),i.marks=p().pureComputed(function(){var e=i.date();return c.Ay.chain(Tt.A.codes).values().filter(function(n){return n.isValidOnDate(e,i.school())}).sortBy(function(e){return e.sortOrder}).map(function(e){var n=p().observable(0!==e.code&&10!==e.code),t=p().observable(!1);return{code:e,slotName:p().pureComputed(function(){var e;return null===(e=i.session())||void 0===e?void 0:e.slotName}),mark:p().pureComputed(function(){var n;if(null!=(n=i.session()))return e.mark(n.slotName)}),sel:n,hov:t,toggleSelect:function(){return n(!n())},toggleHover:function(){return t(!t())}}}).value()}),i.selectedMarks=p().pureComputed(function(){return c.Ay.filter(i.marks(),function(e){return e.sel()})}).extend({throttle:1}),i.toggleSelectAllMarks=function(){var e=i.selectedMarks();e.length<i.marks().length?c.Ay.each(i.marks(),function(e){return e.sel(!0)}):c.Ay.each(e,function(e){return e.sel(!1)})},i.toggleSelectAllText=p().pureComputed(function(){return i.selectedMarks().length<i.marks().length?"Select All":"Deselect All"}),i.showMissingEntriesLink=p().pureComputed(function(){var e=i.selectedMarks(),n=i.sessionData();return n&&(n.allPending()||n.regGroupsPending().length)&&!(1===e.length&&0===e[0].code.code)}),i.showMissingEntries=function(){return c.Ay.each(i.marks(),function(e){return e.sel(0===e.code.code)})},i.addItem=function(e){M()(e).find("td").wrapInner('<div style="display:none;" />'),M()(e).find("td > div").slideDown(300,function(){var e=M()(this);e.replaceWith(e.contents())})},i.removeItem=function(e){M()(e).find("td").animate({padding:0}).wrapInner("<div />"),M()(e).find("td > div").slideUp(300,function(){M()(this).closest("tr").remove()})};var s=function(){var n=function(){e=setTimeout(s,1e4)};y.getRegSessions(i.school().id,i.date(),function(e){i.sessions(e);var t=e.length?e[0]:void 0;i.session(t),t||n()},n)},r=function(){clearTimeout(n);n=setTimeout(function(){l(!0)},1e4)},l=function(e){if(clearTimeout(t),i.session()){var n,o=i.sessionData(),a=e&&o?o.seqNo:void 0,s=function(){if(e&&o){var n=c.Ay.filter(o.allEntries(),function(e){return"pending"===e.syncStatus()});return c.Ay.map(n,function(e){return e.id})}}();e&&o||(n=f),u(n,a,s,function(n){if(e&&o){var a=n.items.length<10?400:200,s=function(){if(n.items.length){var e=n.items[n.items.length-1];o.items.remove(function(n){return n.pupil.id===e.pupil.id});var M=c.Ay.map(i.selectedMarks(),function(e){return e.code.code});
1c.Ay.contains(M,e.entries[0].code[0])&&o.items.unshift(q(e)),n.items.pop(),t=setTimeout(s,a)}else o.attendanceScore(n.attendanceScore),o.regGroupsPending(n.regGroupsPending),o.allPending(n.allPending),o.numItems(n.numItems),i.hideNext(!1),r()};o.seqNo=n.seqNo,i.hideNext(!0),s(),c.Ay.each(n.syncStatuses,function(e){var n=c.Ay.find(o.allEntries(),function(n){return n.id===e.entryId});null==n||n.syncStatus(e.syncStatus)})}else i.sessionData(A(n)),r()},r)}else i.sessionData(null)},d=function(e){if(!i.fetchingData()){var n=i.sessionData().items(),t=n[n.length-1].entries[0].seqNo;u(e,t,[],function(e){var n=c.Ay.map(e.items,q),t=c.Ay.map(i.sessionData().items(),function(e){return e.pupil.id});c.Ay.each(n,function(e){c.Ay.contains(t,e.pupil.id)||i.sessionData().items.push(e)})})}},u=function(e,n,t,o,a){var s=c.Ay.chain(i.selectedMarks()).map(function(e){return e.code.code}).join(",").value();y.getRegSessionData(i.school().id,i.session().id,e,n,s,t,i.fetchingData,o,a)},A=function(e,n){return e.numItems=p().observable(e.numItems),e.attendanceScore=p().observable(e.attendanceScore),e.regGroupsPending=p().observableArray(e.regGroupsPending),e.allPending=p().observable(e.allPending),e.regStatus=p().pureComputed(function(){var n,t,o;if((t=e.allPending())||(null===(n=o=e.regGroupsPending())||void 0===n?void 0:n.length)>0){if(t)return"No registers yet entered";var i=c.Ay.filter(o,function(e){return e.pupilsWithoutMarks===e.pupils}),a=c.Ay.filter(o,function(e){return e.pupilsWithoutMarks<e.pupils}),s=function(e,n){if(n){var t=function(e){return"rg"+e.regGroupId},o=(0,_e.em)(c.Ay.map(e,function(e){return'<a id="'.concat(t(e),'" class="ttLink">').concat(e.regGroupName,"</a>")})),i=c.Ay.map(e,function(e){var n="".concat(e.pupilsWithoutMarks," out of ").concat(e.pupils," pupils without marks");return"<div data-bind=\"tooltip: {position: 'below', target: '#".concat(t(e),"'}\">").concat(n,"</div>")});return c.Ay.reduce(i,function(e,n){return e+n},o)}return(0,_e.em)(c.Ay.map(e,function(e){return e.regGroupName}))},r=s(i),M=s(a,!0),l=(new Date).getTime();return e.regCloses>l?(i.length?"Still waiting for registers for ".concat(r,"<br>"):"")+(a.length?"".concat(M," are in progress"):""):(i.length?"Missing registers for ".concat(r,"<br>"):"")+(a.length?"Missing entries for ".concat(M):"")}return"All registers entered"}),n||(e.items=p().observableArray(c.Ay.map(e.items,q))),e.allEntries=p().pureComputed(function(){return c.Ay.reduceRight(e.items(),function(e,n){return e.concat(n.entries)},[])}),e},q=function(e){e.pupil.schoolClass||(e.pupil.schoolClass={name:"â"}),e.sel=p().observable(),e.toggle=function(){return e.sel(!e.sel())},e.isExpanded=p().observable(),e.visibleEntries=p().pureComputed(function(){return e.isExpanded()?e.entries:[e.entries[0]]}),e.menuMoveTrigger=p().observable();var n=function(){return e.menuMoveTrigger((new Date).getTime())};return o.push(e.isExpanded.subscribe(n)),o.push(e.sel.subscribe(n)),e.entries[0].isCurrent=!0,
1c.Ay.each(c.Ay.tail(e.entries),function(e){return e.isOld=!0}),e.isChecked=p().observable(),e.edit=function(){var n;a([e.pupil]),null!==(n=document.selection)&&void 0!==n&&n.empty?document.selection.empty():window.getSelection&&window.getSelection().removeAllRanges()},e.toggleHistoryText=p().pureComputed(function(){var n=e.isExpanded()?"Hide":"Show";return"".concat(n," History")}),e.hasPriorEntries=e.entries.length>1,e.toggleHistory=function(){return e.isExpanded(!e.isExpanded())},c.Ay.each(e.entries,function(e){if(e.arrived=void 0,e.minutesLate){var n=Date.parse(i.session().start);n.addMinutes(e.minutesLate),e.arrived=n.toString("HH:mm")}if(e.isPresent=p().pureComputed(function(){return 10===e.code[0]}),null==e.notes&&(e.notes="â"),e.posted){var t=e.absenceReport,o=new ha.a(e.posted);e.postedBy=o.byText(t,ge(),"your MIS"),e.postedTime=o.timeText(t)}else e.postedTime="â",e.postedBy="â";e.syncStatus=p().observable(e.syncStatus)}),e.pupil.actions={showPupil:"Show me {pupil:".concat(e.pupil.id,"}")},e},f=25;return i.showing=p().pureComputed(function(){var e=i.sessionData();if(e){var n=e.items().length,t="matching entr"+(1===n?"y":"ies");if(e.numItems()){var o=i.hasNext()?"most recent of ".concat(e.numItems().toLocaleString()):"";return"Showing ".concat(n.toLocaleString()," ").concat(o," ").concat(t)}return"No ".concat(t)}}),i.hideNext=p().observable(),i.hasNext=p().pureComputed(function(){if(i.hideNext())return!1;var e=i.sessionData();return e&&e.items().length<e.numItems()}),i.hasEvenMore=p().pureComputed(function(){var e=i.sessionData();return e&&e.items().length<e.numItems()-f}),i.nextText=p().pureComputed(function(){var e=i.sessionData();if(e){var n=Math.min(f,e.numItems()-e.items().length);return"Next ".concat(n)}}),i.next=function(){return d(f)},i.showAll=function(){var e=i.sessionData();d(e.numItems()-e.items().length)},i.fetchingData=p().observable(),M()(document).on("postedToRegister.dashboard-page",function(){return l(!0)}),o.push(i.school.subscribe(function(){return s()})),o.push(i.session.subscribe(function(){return l()})),o.push(i.selectedMarks.subscribe(function(){i.session()&&l()})),i.dispose=function(){c.Ay.each(o,function(e){return e.dispose()}),clearTimeout(e),clearTimeout(n),clearTimeout(t),M()(document).off(".dashboard-page")},s(),i},template:'<div class="body">\n <div class="topPanel">\n <div class="ts-item pickers">\n <div class="label">Day</div>\n <div class="daySel">Today</div>\n <div class="label">Session</div>\n <div data-bind="if: session">\n <sw-picker params="{items: sessions, selectedItem: session}">\n <span class="slotSel" data-bind="text: slotName.toUpperCase()"></span>\n </sw-picker>\n </div>\n <div data-bind="ifnot: session">\n <a class="ttLink">No sessions available</a>\n <span data-bind="tooltip: {position: \'below\'}">If you were expecting to see sessions\n here, please check Studybugs Sync is running ok (go to the âSettingsâ menu).</span>\n </div>\n </div>\n \x3c!-- ko with: sessionData --\x3e\n <div class="ts-item scores">\n <div class="label">Session Attendance Score <span data-bind="if: allPending() || regGroupsPending().length">So Far</span></div>\n <div class="score">\n <attendance-roundel params="score: attendanceScore, target: $parent.target"></attendance-roundel>\n <div class="caption">\n <div>Whole School</div>\n <div class="target">Target <span data-bind="percentage: $parent.target"></span></div>\n </div>\n </div>\n </div>\n <div class="ts-item regStatus">\n <div class="label">Register Status</div>\n <div data-bind="activeHtml: regStatus"></div>\n <a href="#" data-bind="if: $parent.showMissingEntriesLink, click: $parent.showMissingEntries">Show</a>\n </div>\n \x3c!-- /ko --\x3e\n </div>\n <div class="actions" data-bind="css: {sel: itemsSelected().length}">
1\n <span data-bind="if: itemsSelected().length">\n <span class="selItems">\n <a href="#" data-bind="click: clearSel"><i data-bind="html: s.m.schoolIcons.clear"></i></a>\n <span data-bind="text: itemsSelText"></span>\n </span>\n </span>\n <span class="ptrWrapper">\n <button class="button button-primary" data-bind="click: postToRegister, enable: postToRegisterEnabled">\n <i data-bind="html: s.m.schoolIcons.postToRegister"></i><span data-bind="text: postToRegButtonLabel">Post to Register</span>\n </button>\n <div data-bind="tooltip: {position: \'below\', enable: !itemsSelected().length}">Shortcut: <b>R</b></div>\n <div data-bind="hidden: postToRegisterEnabled"></div>\n <div data-bind="tooltip: {position: \'below\', enable: !postToRegisterEnabled()}" class="ptrLimit">\n Due to a limitation with <mis-text></mis-text>, itâs not possible to post marks in the register.\n </div>\n <span>\n </div>\n <div class="entries" data-bind="if: sessionData">\n <h2>Live Register Feed</h2>\n <div class="showing">\n Marks: <span data-bind="popover: {}">\n <a class="popoverLabel" href="#">\n <span data-bind="foreach: selectedMarks"><span class="selMark" data-bind="text: mark"></span></span>\n <span data-bind="ifnot: selectedMarks().length">None</span>\n <span class="arrow">â¾</span>\n </a>\n <div class="popoverBody">\n <div>\n <a href="#" data-bind="click: toggleSelectAllMarks, text: toggleSelectAllText"></a>\n <ul data-bind="foreach: marks">\n <li data-bind="css: {sel: sel, hov: hov}, click: toggleSelect, event: {mouseover: toggleHover, mouseout: toggleHover}">\n <register-mark params="code: code.code, slotName: slotName, ttDisable: true"></register-mark>\n <span data-bind="text: code.label"></span>\n </li>\n </ul>\n </div>\n </div>\n </span>\n </div>\n <table data-bind="with: sessionData">\n <thead>\n <tr>\n <th>\n {{#if items() && items().length}}\n <input type="checkbox" data-bind="checked: $parent.selectAllChecked" />\n {{/if}}\n </th>\n <th>Pupil</th>\n <th>Mark</th>\n <th>Arrived</th>\n <th>Notes</th>\n <th>Posted</th>\n \x3c!-- ko if: $component.showSyncStatus --\x3e\n <th>In <mis-text></mis-text></th>\n \x3c!-- /ko --\x3e\n </tr>\n </thead>\n <tbody>\n \x3c!-- ko foreach: {data: items, afterAdd: $parent.addItem, beforeRemove: $parent.removeItem} --\x3e\n <tr><td class="vsp" colspan="6"></td></tr>\n \x3c!-- ko foreach: {data: visibleEntries} --\x3e\n <tr class="item"\n data-bind="css: {sel: $parent.sel, old: $data.isOld}, event: {mouseover: $parent.toggle, mouseout: $parent.toggle, dblclick: $parent.edit}">\n <td class="selcb">\n <div data-bind="if: $data.isCurrent">\n <input type="checkbox" data-bind="checked: $parent.isChecked" />\n </div>\n </td>\n \x3c!-- ko if: $data.isCurrent --\x3e\n <td class="pupil" data-bind="attr: {rowspan: $parent.visibleEntries().length}, itemMenuPositioner: {trigger: $parent.menuMoveTrigger}">\n \x3c!-- ko with: $parent --\x3e\n <assist-link class="name" params="utterance: {text: pupil.actions.showPupil}">{{pupil.name}}</assist-link>\n \x3c!-- /ko --\x3e\n <div class="class" data-bind="text: $parent.pupil.schoolClass.name"></div>\n <div class="itemMenu">\n <a href="#" data-bind="click: $parent.edit, clickBubble: false">Edit</a>\n <span data-bind="if: $parent.hasPriorEntries">\n <a href="#" data-bind="click: $parent.toggleHistory, text: $parent.toggleHistoryText"></a>\n </span>
1\n <span data-bind="ifnot: $parent.hasPriorEntries">\n <a class="disabled">No History</a>\n </span>\n </div>\n </td>\n \x3c!-- /ko --\x3e\n <td class="markCol">\n <register-mark params="code: code[0], slotName: $component.session()?.slotName"></register-mark>\n </td>\n <td class="arrCol">\n <div data-bind="if: arrived">\n <div class="arrived" data-bind="text: arrived"></div>\n <div class="minsLate">(<span data-bind="text: minutesLate"></span> minutes late)</div>\n </div>\n <div data-bind="ifnot: arrived">\n <span data-bind="if: isPresent">On time</span>\n <span data-bind="ifnot: isPresent">â</span>\n </div>\n </td>\n <td class="notes">\n \x3c!-- We could: Not display if text matches Via Sickly ... --\x3e\n <span data-bind="text: notes"></span>\n \x3c!-- We could: Show absence report details if we have them --\x3e\n </td>\n <td class="posted">\n <div class="time" data-bind="text: postedTime"></div>\n <div class="by" data-bind="text: postedBy"></div>\n </td>\n \x3c!-- ko if: $component.showSyncStatus --\x3e\n <td class="inIMS">\n <ims-posting-status params="status: syncStatus"></ims-posting-status>\n </td>\n \x3c!-- /ko --\x3e\n </tr>\n \x3c!-- /ko --\x3e\n \x3c!-- /ko --\x3e\n </tbody>\n </table>\n <div class="paging">\n <div data-bind="text: showing"></div>\n <div data-bind="if: hasNext, css: {disabled: fetchingData}">\n <a href="#" data-bind="text: nextText, click: next"></a>\n <span data-bind="if: hasEvenMore">| <a href="#" data-bind="click: showAll">Show All</a></span>\n </div>\n </div>\n </div>\n </div>'});var GM='{{#if pages}}\n <div class="pagination">\n Page {{selectedPage() + 1}} of {{pages}}\n {{#if selectedPage}}\n <a href="#" data-bind="click: previous, css: {inactive: gettingPage}">Previous</a>\n {{/if}}\n {{#if selectedPage() < pages() - 1}}\n <a href="#" data-bind="click: next, css: {inactive: gettingPage}">Next</a>\n {{/if}}\n </div>\n {{/if}}',zM='<main-content>\n <div>\n <h2>Parents and Carers Registered with Studybugs</h2>\n <input type="text" data-bind="value: nameQuery, valueUpdate: \'afterkeydown\'" placeholder="Find a user or child">\n <search-filter>\n Filter:\n {{#foreach filters}}\n <a href="#" data-bind="click: select, css: {sel: isSelected, inactive: $component.gettingPage}">{{name}}</a>\n {{/foreach}}\n </search-filter>\n {{#if numPostponedText() || postponedCleared()}}\n <postponed-records>\n {{#ifnot postponedCleared}}\n <alert-icon>{{{coreIcons.alert}}}</alert-icon>\n <postponed-body>\n {{numPostponedText}} marked as â{{helpers.userPostponeText}}â. If theyâre now in\n <mis-text params="showForSpreadsheet: true"></mis-text> and enrolled click\n <a href="#" data-bind="click: clearPostponedMatches, css: {inactive: clearPostponedInProgress}">here</a>\n to start matching up.</postponed-body>\n {{/ifnot}}\n {{#if postponedCleared}}\n <alert-icon>{{{globals.schoolIcons.tick}}}</alert-icon>\n <postponed-body>\n Great!\n <mis-text params="showForSpreadsheet: true">\n {{#ifnot isSpreadsheet}}\n Weâre now updating pupil data from {{yourMIS}}.\n {{/if}}\n {{#if isSpreadsheet}}\n Weâre now automatically matching records where possible.\n {{/if}}\n </mis-text>\n Check back in 15 minutes to match any remaining records.<
1/postponed-body>\n {{/if}}\n </postponed-records>\n {{/if}}\n '.concat(GM,'\n {{#ifnot pages}}<div> </div>{{/ifnot}}\n <table>\n <thead>\n <tr>\n <th class="sb userChild">Studybugs Users and Children</th>\n <th class="equals"></th>\n <th class="ims matched">Matched <mis-text></mis-text> Records</th>\n <th class="ims"></th>\n </tr>\n </thead>\n <tbody data-bind="foreach: rows">\n <tr data-bind="css: {userRow: isUser}">\n <td class="sb userChild"\n data-bind="css: {inactive: showAsInactive}">\n <icon data-bind="css: {tree: isDependent}">\n {{#if isUser}}\n {{{$component.orgIcons.person}}}\n {{/if}}\n {{#if isDependent}}\n ').concat(ba.treeTemplate,'\n {{/if}}\n </icon>\n {{#if isUser}}\n {{#if profilePicUrl}}\n <profile-pic>\n <img data-bind="attr: {src: profilePicUrl}">\n </profile-pic>\n {{/if}}\n <span data-bind="highlight: {text: name,\n terms: $component.queryTerms}"></span>\n {{#if email}} ({{email}}){{/if}}\n {{/if}}\n {{#if isDependent}}\n <pupil-item>\n <pupil-icon>{{{$component.orgIcons.pupil}}}</pupil-icon>\n {{#if profilePicUrl}}\n <profile-pic>\n <img data-bind="attr: {src: profilePicUrl}">\n </profile-pic>\n {{/if}}\n <pupil-name data-bind="highlight: {text: name,\n terms: $component.queryTerms}"></pupil-name>\n </pupil-item>\n {{/if}}\n </td>\n <td class="equals">\n {{#if showAsUnknown}}{{{$component.coreIcons.alert}}}{{/if}}\n {{#if isPostponedOrRejected}}x{{/if}}\n {{#ifnot isUnknown() || isPostponedOrRejected()}}={{/ifnot}}\n </td>\n <td class="ims matched">\n {{#if showImsIcon}}\n <icon data-bind="css: {tree: isDependent}">\n {{#if matchedContact}}\n {{{$component.orgIcons.person}}}\n {{/if}}\n {{#if matchedPupil}}\n ').concat(ba.treeTemplate,"\n {{/if}}\n </icon>\n {{/if}}\n {{#if matchedContact}}\n {{matchedContact().name}}\n {{#if matchedContact().primaryEmail}} ({{matchedContact().primaryEmail}}){{/if}}\n {{/if}}\n {{#if matchedPupil}}\n <pupil-item>\n <pupil-icon>{{{$component.orgIcons.pupil}}}</pupil-icon>\n <pupil-name>{{matchedPupil().name}}</pupil-name>{{#if matchedPupil().class}},\n <class-name>{{matchedPupil().class.name}}</class-name>{{/if}}{{#if matchedPupil().futurePupil}}\n <future-pupil>").concat(qa,'</future-pupil>{{/if}}\n </pupil-item>\n {{/if}}\n {{#if showAsUnknown}}\n <a href="#" data-bind="click: $component.showMatcher">Unknown â please match</a>\n {{/if}}\n {{#if isPostponed}}\n {{#if isUser}}{{$component.helpers.userPostponeText}}{{/if}}\n {{#if isDependent}}{{$component.helpers.dependentPostponeText}}{{/if}}\n {{/if}}\n {{#if isRejected}}\n {{#if isUser}}').concat(ba.userRejectionText,"{{/if}}\n {{#if isDependent}}").concat(ba.dependentRejectionText,'{{/if}}\n {{/if}}\n </td>\n <td class="ims change">\n {{#ifnot isUnknown}}\n <a href="#" data-bind="click: $component.showMatcher">Change</a>\n {{/ifnot}}\n </td>\n </tr>\n </tbody>\n </table>\n ').concat(GM,'\n {{#ifnot pages}}\n <div class="noResults">\n {{#if nameQuery}}No results found{{/if}}\n {{#ifnot nameQuery}}\n {{#if selectedFilter().actionOnly}}\n Good news â there are no records requiring action.\n {{/if}}\n {{#if selectedFilter().postponedOnly}}\n There are no records marked as â{{helpers.userPostponeText}}â.\n {{/if}}\n {{#ifnot selectedFilter().actionOnly || selectedFilter().postponedOnly }}\n When parents start signing up to Studybugs, youâll see them appear here.<br>\n <a href="#" data-bind="goto: s.m.schoolPath(\'help/telling\')">Havenât told them yet?</a>\n {{/ifnot}}\n {{/ifnot}}\n </div>\n {{/ifnot}}\n <div data-bind="popover: {isModal: true, dim: true, noLabel: true, open: matcherOpen}">\n <div class="popoverBody">\n <div class="popoverTitle">Matching Up</div>\n <matching-up class="body">\n <pupil-contact-matcher params="userId: matcherUserId, dependentId: matcherDependentId, popoverOpen: matcherOpen">\n </pupil-contact-matcher>\n </matching-up>\n </div>\n </div>\n </div>\n </main-content>');p().components.register("users-page",{viewModel:function(){var e=p().observable(),n=p().observableArray(),t=p().observable(""),o=(0,D.$)("q");o&&t(o);var i=p().observable(0),a=p().observable(1),r=p().observable(0),l=p().pureComputed(function(){var e=r();if(e)return"".concat(e," record").concat(1===e?" is":"s are")}),d=p().observable(),u=p().observable(),A=p().pureComputed(function(){return t().split(" ")}),q=p().observable(),m=p().observable(),f=p().observable(),h=[{name:"All Users",actionOnly:!1,postponedOnly:!1},{name:"Action Required",actionOnly:!0,postponedOnly:!1},{name:ba.notYetInMISTitleCase,actionOnly:!1,postponedOnly:!0}],W=p().observable(h[0]);function g(){v(i(),W(),!0),y.getNumPostponed(O.school().id,function(e){r(e.numMatchesPostponed)})}function v(o,r,l){var d={actionOnly:(r||W()).actionOnly,postponedOnly:(r||W()).postponedOnly,page:o};t()&&0!==t().trim().length&&(d.nameQuery=t()),y.getUsers(s.m.school().id,d,e,function(e){i(o),r&&W(r),a(e.pages),n(c.Ay.flatten(c.Ay.map(e.rows,b))),l||window.setTimeout(function(){return M()("html, body").animate({scrollTop:0},500)},1)})}function b(e){function n(n,t){var o=p().observable(n.isPostponed),i=p().observable(n.isRejected),a=p().pureComputed(function(){return o()||i()}),s=p().observable(n.matchedPupil),r=p().observable(n.matchedContact),M=p().pureComputed(function(){return!(r()||s()||a())}),l=void 0!==t;return{isDependent:l,isUser:!l,parent:t,isLast:l&&c.Ay.indexOf(e.depen
1dents,n)==e.dependents.length-1,id:n.id,name:n.name,email:n.email,matchedContact:r,matchedPupil:s,isPostponed:o,isRejected:i,isPostponedOrRejected:a,isUnknown:M,showAsUnknown:p().pureComputed(function(){return M()&&!(t&&(t.isUnknown()||t.isPostponedOrRejected()))}),showImsIcon:p().pureComputed(function(){return!(M()||a())}),showAsInactive:p().pureComputed(function(){var e=r()||(t?t.matchedContact():null);return e&&e.isInactiveMatch}),profilePicUrl:n.profilePicInfo?(0,ht.t)(n.id,n.profilePicInfo,l,48):null}}var t=n(e),o=c.Ay.map(e.dependents,function(e){return n(e,t)});return t.dependents=o,[t].concat(o)}function w(){g()}function k(){g()}function x(){g()}function T(){g()}return c.Ay.each(h,function(n){n.select=function(){e()||v(0,n)},n.isSelected=p().pureComputed(function(){return W()===n})}),t.subscribe(c.Ay.debounce(function(){return v(0)},300)),g(),M()(document).on("pupilMatched",k),M()(document).on("contactMatched",w),M()(document).on("matchRejected",x),M()(document).on("matchPostponed",T),{rows:n,nameQuery:t,queryTerms:A,filters:h,selectedFilter:W,numPostponedText:l,clearPostponedInProgress:d,clearPostponedMatches:function(){y.clearPostponed(O.school().id,d,function(e){M()(document).trigger("postponedMatchesCleared",e.numMatchesRequired),g(),u(!0)})},postponedCleared:u,gettingPage:e,selectedPage:i,pages:a,previous:function(){if(!e()){var n=i();n>0&&v(n-1)}},next:function(){if(!e()){var n=i();n<a()-1&&v(n+1)}},matcherUserId:q,matcherDependentId:m,matcherOpen:f,showMatcher:function(e,n){
1n.stopPropagation(),e.isDependent?(q(e.parent.id),m(e.id)):(q(e.id),m(null)),f(!0)},globals:O,helpers:ba,orgIcons:Yn.Ay,schoolIcons:ft,coreIcons:Gt.Ay,dispose:function(){M()(document).off("pupilMatched",k),M()(document).off("contactMatched",w),M()(document).off("matchRejected",x),M()(document).off("matchPostponed",T)}}},template:zM});var YM={createDelayedObservable:function(e,n){var t,o=p().observable();return e.subscribe(function(e){e?(clearTimeout(t),o(!0)):t=setTimeout(function(){return o(!1)},n)}),o}},_M="am",KM="pm",JM=[_M,KM];function XM(){return H()().hour()<12?_M:KM}var QM,ZM,ec=p().observable(XM()),nc={start:function(){!function e(){var n=XM();QM!==n&&ec(n),QM=n,ZM=setTimeout(e,6e4)}()},stop:function(){clearTimeout(ZM)}},tc={selectedName:ec,am:_M,pm:KM,names:JM,rollover:nc};var oc,ic={getNoMarkCodeValue:function(e){return e?Tt.A.remoteNoMark:Tt.A.noMark},getPresentCodeValue:function(e){return e?Tt.A.remotePresent:Tt.A.present},getAbsentCodeValue:function(e){return e?820:100},isAbsentCodeValue:function(e){return 100===e||820===e}},ac=document.exitFullscreen||document.msExitFullscreen||document.mozCancelFullScreen||document.webkitExitFullscreen,sc=p().observable();M()(document).on("fullscreenchange webkitfullscreenchange mozfullscreenchange MSFullscreenChange",function(){var e=document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.msFullscreenElement;e?(oc=e,sc(!0),M()(e).addClass("fullscreen")):(sc(!1),M()(oc).removeClass("fullscreen"))});var rc={supported:ac,on:sc,enter:function(e){e.requestFullscreen?e.requestFullscreen():e.msRequestFullscreen?e.msRequestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.webkitRequestFullscreen&&e.webkitRequestFullscreen()},leave:function(){document.exitFullscreen?document.exitFullscreen():document.msExitFullscreen?document.msExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.webkitExitFullscreen&&document.webkitExitFullscreen()}},Mc=(t(94490),{});var cc={mapRegistersData:function(e){var n=["#002050","#008040","#0040d0","#004000","#103040","#3080ff"],t=[];Mc={},c.Ay.each(e.lunchOptions,function(e,o){var i,a=e.description||e.label||"Option ".concat(o+1),s=c.Ay.map(a.split("|"),function(e){return e.trim()}),r=c.Ay.map(s.reverse(),function(o,a){var r=c.Ay.find(t,function(e){return e.label===o});if(!r){var M=a===s.length-1;r={id:t.length+1,type:M?e.type:"extra",label:o,colour:M?e.colour:n[t.length],nextOptionIds:[]},t.push(r)}return i&&!c.Ay.contains(r.nextOptionIds,i)&&r.nextOptionIds.push(i),i=r.id});Mc[e.id]=r.reverse()}),e.lunchOptions=t,c.Ay.each(e.pupilItems,function(e){var n=e.lunchChoice;n&&(n.optionIds=Mc[n.optionId],n.optionId=void 0)})},mapLunchChoicePostData:function(e){if(e)return{optionId:c.Ay.invert(Mc)[e.optionIds]}},mapLunchChoicePostResponse:function(e){c.Ay.each(e.marks,function(e){e.lunchChoice&&e.lunchChoice.optionId&&(e.lunchChoice.optionIds=Mc[e.lunchChoice.optionId],e.lunchChoice.optionId=void 0)})}};var lc,dc=(lc={pending:[]},{add:function(e,n,t,o){c.Ay.each(lc.pending,function(t){t.slotName===e&&(t.marks=c.Ay.filter(t.marks,function(e){var t=c.Ay.filter(n,function(n){return n.pupilId===e.pupilId}),o=void 0!==e.code&&c.Ay.filter(t,function(e){return void 0!==e.code}).length,i=e.lunchChoice&&c.Ay.filter(t,function(e){return e.lunchChoice}).length,a=o||i;return a&&e.posting(!1),!a}))});var i={slotName:e,marks:n};setTimeout(function(){!function(e,n,t){if(n.length){var o=c.Ay.map(n,function(e){return{pupilId:e.pupilId,code:e.code,lunchChoice:cc.mapLunchChoicePostData(e.lunchChoice)}}),i={slotName:e,marks:o};y.postToClassRegister(O.school().id,i,t,a,s)}function a(e){cc.mapLunchChoicePostResponse(e),M()(document).trigger("marksPosted",[e])}function s(){}}(e,i.marks,o),lc.pending=c.Ay.without(lc.pending,i)},t?1e3:0),lc.pending.push(i)}});var uc={post:function(e,n,t){var o=p().observable();o.subscribe(function(e){c.Ay.each(n,function(n){return n.posting(e)})}),o(!0),p().tasks.runEarly(),dc.add(e,n,t,o)}};t(48980);p().components.register("scroll-buttons",{viewModel:function(e){var n=(0,Vt.oI)(e.totalRows),t=(0,Vt.oI)(e.selectedRow);n.subscribe(function(){return t(1)});var o=p().pureComputed(function(){return t()>1}),i=p().pureComputed(function(){return t()<n()});return{icons:rs.A,totalRows:n,upEnabled:o,up:function(){o()&&t(t()-1)},downEnabled:i,down:function(){i()&&t(t()+1)}}}
1,template:'\n {{#if totalRows() && totalRows() > 1}}\n <div class="left">\n <button class="up" data-bind="enable: upEnabled, click: up">{{{icons.downArrowPointy}}}</button>\n <button class="down" data-bind="enable: downEnabled, click: down">{{{icons.downArrowPointy}}}</button>\n </div>\n <div class="right">\n <button class="up" data-bind="enable: upEnabled, click: up">{{{icons.downArrowPointy}}}</button>\n <button class="down" data-bind="enable: downEnabled, click: down">{{{icons.downArrowPointy}}}</button>\n </div>\n {{/if}}'}),p().components.register("pupil-pic-image",{viewModel:function(e){return{url:e.picUrl,icons:Yn.Ay}},template:'\n {{#if $data.url}}\n <img data-bind="attr: {src: url}">\n {{/if}}\n {{#ifnot $data.url}}\n {{{icons.pupilPlaceholder}}}\n {{/ifnot}}'});t(65287);p().components.register("pupil-tile",{viewModel:function(e){var n=O.isAlternativeProvision,t=O.isAlternativeProvision;return{item:e.item,lunchOptionsVisible:e.lunchOptionsVisible,lunchOptions:e.lunchOptions,lunchOptionsToPresent:e.lunchOptionsToPresent,icons:ft,slots:tc,withApMarkRendering:n,marksControlledByStudybugs:t}},template:'{{#with item}}\n <tile-body tabindex="0"\n data-bind="event: {touchend: tap},\n hasFocus: hasFocus,\n css: {hover: hasHover, complete: isComplete, absent: isAbsent, remote: isRemoteLearner,\n disabled: posting() && !lunchPickerVisible()}">\n <pupil-pic>\n <pupil-pic-ring></pupil-pic-ring>\n <pupil-pic-image params="picUrl: pupil.picUrl"></pupil-pic-image>\n <remote-cam></remote-cam>\n {{#if isPresent}}\n <remote-cam-light></remote-cam-light>\n {{/if}}\n <pupil-pic-overlay data-bind="css: {visible: hasHover() || lunchPickerVisible()},\n event: {mouseenter: setHover(true), mouseleave: setHover(false)},\n click: click">\n <div>{{overlayText}}</div>\n </pupil-pic-overlay>\n <div class="registersToggle"\n data-bind="tooltip: {position: \'below\', mouseOpenDelay: 2000, enable: tooltipEnabled}">\n Click or tap to toggle<br>\n present â absent â clear mark\n <div class="shortcuts">\n Shortcuts:<br>\n <b>Tab</b>, <b>â</b> or <b>â</b> to select pupil<br>\n {{#if requiresLunchChoice}}\n <b>1</b>-<b>{{$component.lunchOptionsToPresent().length}}</b> for lunch option and present<br>\n {{/if}}\n {{#ifnot requiresLunchChoice}}\n <b>P</b>, <b>/</b> or <b>\\</b> for present<br>\n {{/ifnot}}\n <b>A</b> or <b>N</b> for absent<br>\n <b>C</b> or <b>-</b> to clear<br>\n <b>Enter</b> to toggle\n </div>\n </div>\n {{#if lunchPickerVisible}}\n <lunch-option-picker>\n <picker-mask></picker-mask>\n <pupil-pic-mask data-bind="click: click, event: {touchend: tap}"></pupil-pic-mask>\n {{#foreach lunchOptions}}\n <lunch-option data-bind="css: {chosen: option.chosen},\n click: option.choose, event: {touchend: option.choose}">\n <option-circle data-bind="style: {background: option.colour, top: top, left: left},\n css: option.css,\n event: {mouseenter: option.setActive(true),\n mouseleave: option.setActive(false)}">\n {{#if option.chosen}}\n {{{$component.icons.lunchChoiceTick}}}\n {{/if}}\n {{#ifnot option.chosen}}\n {{#if option.icon}}{{{option.icon}}}{{/if}}\n {{/ifnot}}\n </option-circle>\n </lunch-option>\n {{/foreach}}\n </lunch-option-picker>\n {{/if}}\n {{#ifnot lunchPickerVisible}}\n {{#if presentish}}\n <a class="present"\n data-bind="event: {touchend: presentTooltip.toggle}, css: {selected: isPresent() || postingPresent()}">\n {{#ifnot isLate}}\n {{{$component.icons.presentMark}}}\n {{/ifnot}}\n {{#if isLate}}\n {{{$component.icons.lateMark}}}\n {{/if}}\n </a>\n {{#if isPresent}}\n <div class="ttMark history"\n data-bind="tooltip: {position: \'below\',\n open: presentTooltip.open,\n enable: markTooltipsEnabled,\n ignoreTouch: true}">\n <register-mark-history params="history: [session().entry()],\n slotName: $component.slots.selectedName,\n withApMarkRendering: $component.withApMarkRendering,\n marksControlledByStudybugs: $component.marksControlledByStudybugs">\n </register-mark-history>\n </div>\n {{/if}}\n {{#if requiresLunchChoice}}\n {{#if lunchChoice.options().length}}\n <a class="lunchChoice"\n data-bind="css: lunchChoice.options()[0].css,\n click: showLunchPicker">\n <choice-blob data-bind="style: {background: lunchChoice.options()[0].colour}"></choice-blob>\n </a>\n {{/if}}\n {{#ifnot lunchChoice.options().length}}\n <a class="lunchChoice none"\n data-bind="click: showLunchPicker">\n {{{$component.icons.lunchChoiceWarning}}}\n </a>\n {{/ifnot}}\n <div class="lunchChoice"\n data-bind="tooltip: {position: \'below\', ignoreTouch: true}">\n {{lunchChoice.text}}\n </div>\n {{/if}}\n {{/if}}\n {{#if absentish}}\n <a class="absent"\n data-bind="event: {touchend: absentTooltip.toggle},\n css: {selected: isAbsent() || postingAbsent()}">{{{$component.icons.absentMark}}}</a>\n {{#if isAbsent}}\n <div class="ttMark history"\n data-bind="tooltip: {position: \'below\',\n open: absentTooltip.open,\n enable: markTooltipsEnabled,\n ignoreTouch: true}">\n <register-mark-history params="history: [session().entry()],\n slotName: $component.slots.selectedName,\n withApMarkRendering: $component.withApMarkRendering,\n marksControlledByStudybugs: $component.marksControlledByStudybugs">\n </register-mark-history>\n </div>\n {{/if}}\n {{/if}}\n {{/ifnot}}\n </pupil-pic>\n <tile-footer>\n <pupil-name>{{pupilName}}</pupil-name>\n </tile-footer>\n </tile-body>\n {{/with}}'});var Ac=44;function pc(e){if(M()("pupil-tiles").length){var n,t,o,i=M()("pupil-tiles").width(),a=M()("pupil-tiles").offset().top+M()("registers-page").scrollTop(),s=M()("lunch-options lunch-option").height()||0,r=s+(rc.on()?0:ua.assistantInputBarHeight()),l=M()(window).height()-a-r,d=139/168,u=i/l,A=c.Ay.map(c.Ay.range(1,e+1),function(n){return Math.abs(d*(n/Math.ceil(e/n))-u)}),p=c.Ay.min(A),q=c.Ay.indexOf(A,p)+1,m=Math.floor((i-15*(q-1))/q),f=Math.ceil(e/q),h=Math.floor(l/f)-Ac,W=Math.min(m,h);W<85?(o=!1,W=124,q=Math.floor(i/(W+15)),f=Math.ceil(e/q),t=0):(o=!0,t=Math.floor(l/f-W-Ac));var g=(y=function(e,n){var t=c.Ay.map(c.Ay.range(n),function(){return 0});function o(e){var n=c.Ay.indexOf(t,c.Ay.min(t));return t[n]+=1,e>1?o(e-1):t}return o(e)}(e,f),w=c.Ay.sortBy(y,function(e){return e}),(k=c.Ay.partition(w,function(e,n){return n%2==0}
1))[1].concat(k[0].reverse())),v=c.Ay.max(g);n=Math.floor((i-v*W)/(v-1));var b=c.Ay.map(c.Ay.range(e),function(e){var o=0,a=c.Ay.findIndex(g,function(n){return(o+=n)>e}),s=e-c.Ay.reduce(g.slice(0,a),function(e,n){return e+n},0),r=a*(W+Ac+t),M=g[a]*W+(g[a]-1)*n;return{top:r,left:(i-M)/2+s*(W+n)}});return{picDiameter:W,horzSpacing:n,vertSpacing:t,numRows:g.length,positions:b,fitsOnScreen:o,lunchOptionsHeight:s}}var y,w,k}p().components.register("pupil-tile-layout",{viewModel:function(e){var n=p().observable(),t=p().pureComputed(function(){var e=n();return e?function(e){var n="registers-page",t="".concat(n," pupil-tiles"),o=t+" pupil-tile tile-body",i=48/124*e.picDiameter,a=e.numRows*(e.picDiameter+Ac)+(e.numRows-1)*e.vertSpacing,s="",r=e.fitsOnScreen?"\n body.fullscreen ".concat(n," {\n overflow-y: hidden;\n }"):"\n body.fullscreen ".concat(n," {\n overflow-y: scroll;\n }\n ").concat(n," {\n padding-bottom: ").concat(e.lunchOptionsHeight+30,"px;\n }");return e.fitsOnScreen||(s="\n body.fullscreen ".concat(n," scroll-buttons {\n display: none;\n }")),"\n ".concat(r,"\n ").concat(s,"\n ").concat(n," scroll-buttons .left, ").concat(n," scroll-buttons .right {\n bottom: ").concat(e.lunchOptionsHeight+20,"px;\n }\n ").concat(t," {\n height: ").concat(a,"px;\n }\n ").concat(o," pupil-pic {\n width: ").concat(e.picDiameter,"px;\n height: ").concat(e.picDiameter,"px;\n border-radius: ").concat(e.picDiameter/2,"px;\n }\n ").concat(o," pupil-pic pupil-pic-ring {\n border-radius: ").concat((e.picDiameter+10)/2,"px;\n }\n ").concat(o," pupil-pic pupil-pic-image {\n width: ").concat(e.picDiameter,"px;\n height: ").concat(e.picDiameter,"px;\n }\n ").concat(o," pupil-pic pupil-pic-image img {\n border-radius: ").concat(e.picDiameter/2,"px;\n width: ").concat(e.picDiameter-4,"px;\n height: ").concat(e.picDiameter-4,"px;\n }\n ").concat(o," pupil-pic pupil-pic-image svg {\n width: ").concat(e.picDiameter,"px;\n height: ").concat(e.picDiameter,"px;\n }\n ").concat(o," pupil-pic pupil-pic-overlay {\n border-radius: ").concat(e.picDiameter/2,"px;\n }\n ").concat(o," pupil-pic pupil-pic-overlay div {\n height: ").concat(e.picDiameter,"px;\n width: ").concat(e.picDiameter,"px;\n }\n ").concat(o," pupil-pic a.present, ").concat(o," pupil-pic a.absent {\n height: ").concat(i,"px;\n }\n ").concat(o," pupil-pic a.lunchChoice:not(.none) {\n top: ").concat(i-10-6,"px;\n }\n ").concat(o," pupil-pic a.lunchChoice.none {\n top: ").concat(i-20,"px;\n }\n ").concat(o," pupil-pic a svg.mark {\n width: ").concat(i,"px;\n height: ").concat(i,"px;\n }\n ").concat(o," lunch-option-picker picker-mask {\n border-radius: ").concat(e.picDiameter/2+43+7,"px;\n }\n ").concat(o," lunch-option-picker pupil-pic-mask {\n border-radius: ").concat(e.picDiameter/2,"px;\n }\n ").concat(function(e,n){var t=7,o=n.picDiameter-2*t,i=14,a=2;return"\n ".concat(e," pupil-pic {\n height: ").concat(o,"px;\n }\n ").concat(e," pupil-pic-image {\n height: ").concat(o,"px;\n }\n ").concat(e," pupil-pic-image img {\n height: ").concat(o-2*(i+a),"px;\n }\n ").concat(e," pupil-pic-image svg {\n height: ").concat(o,"px;\n }\n ").concat(e," pupil-pic-overlay div {\n height: ").concat(o,"px;\n }")}(o+".remote",e),"\n ").concat(o," tile-footer pupil-name {\n width: ").concat(e.picDiameter,"px;\n }")}(e):""}),o=p().observable(),i=p().observable();n.subscribe(function(e){o((e||{}).numRows),i(1)}),M()(document).on("resetTileScroll.tiles",function(){return i(1)});var a=p().pureComputed(function(){var t=p().unwrap(e.items),o=n();return o&&o.positions.length===t.length?c.Ay.map(t,function(e,n){e.diameter(o.picDiameter);var t=o.positions[n];return{item:e,positionStyles:{top:Math.round(t.top)+"px",left:Math.round(t.left)+"px"}}}):[]}),s=p().pureComputed(function(){var e=n(),t=i(),o=e.picDiameter+Ac+e.vertSpacing;return{transform:"translate(0, ".concat(t>1?(t-1)*o:0,"px)")}}),r=setInterval(function(){var t=pc(p().unwrap(e.items).length);c.Ay.isEqual(t,n())||n(t)},1e3);return{styles:t,numTileRows:o,selectedScrollRow:i,itemsWithPositions:a,tileTopMargin:s,lunchOptionsVisible:e.lunchOptionsVisible,lunchOptions:e.lunchOptions,lunchOptionsToPresent:e.lunchOptionsToPresent,dispose:function(){clearInterval(r),M()(document).off("resetTileScroll.tiles")}}},template:'<style type="text/css">{{{styles}}}</style>\n <pupil-tiles data-bind="foreach: itemsWithPositions">\n <pupil-tile params="item: item,\n lunchOptionsVisible: $component.lunchOptionsVisible,\n lunchOptions: $component.lunchOptions,\n lunchOptionsToPresent: $component.lunchOptionsToPresent"\n data-bind="style: jQuery.extend(positionStyles, $component.tileTopMargin()),\n css: {lunchPicker: item.lunchPickerVisible}"></pupil-tile>\n </pupil-tiles>\n <scroll-buttons params="totalRows: numTileRows, selectedRow: selectedScrollRow"></scroll-buttons>'}),p().components.register("sb-clock",{viewModel:function(){function e(){var e=new Date;return 60*(60*e.getHours()+e.getMinutes())+e.getSeconds()}var n=p().observable(e()),t=2*Math.PI,o=[{length:12,angle:p().pureComputed(function(){return t*(n()/3600)/12})},{length:20,angle:p().pureComputed(function(){return t*(n()/60)/60})},{length:20,angle:p().pureComputed(function(){return t*n()/60})}];return c.Ay.each(o,function(e){e.x2=p().pureComputed(function(){return 25+Math.sin(e.angle())*e.length}),e.y2=p().pureComputed(function(){return 25-Math.cos(e.angle())*e.length})}),setInterval(function(){return n(e())},200),{hands:o}},template:'\n <svg viewBox="0 0 50 50">\n <g>\n <g>\n <line class="minor" x1="46.7" y1="12.5" x2="3.3" y2="37.5"/>\n <line class="minor" x1="37.5" y1="3.3" x2="12.5" y2="46.7"/>\n <line class="minor" x1="3.3" y1="12.5" x2="46.7" y2="37.5"/>\n <line class="minor" x1="12.5" y1="3.3" x2="37.5" y2="46.7"/>\n </g>\n <circle class="mask" cx="25" cy="25" r="21.6"/>\n <g>\n <line class="major" x1="25" y1="0" x2="25" y2="50"/>\n <line class="major" x1="50" y1="25" x2="0" y2="25"/>\n </g>\n <circle class="mask" cx="25" cy="25" r="19.3"/>\n <line class="hand hour" x1="25" y1="25" x2="{{hands[0].x2}}" y2="{{hands[0].y2}}"/>\n <line class="hand minute" x1="25" y1="25" x2="{{hands[1].x2}}" y2="{{hands[1].y2}}"/>\n <line class="hand second" x1="25" y1="25" x2="{{hands[2].x2}}" y2="{{hands[2].y2}}"/>\n <circle class="centre" cx="25" cy="25" r="2.5"/>\n </g>\n </svg>'}),p().components.register("sb-calendar",{viewModel:function(){var e=p().observable(H()());return setInterval(function(){return e(H()())},1e3),{time:e}}
1,template:'\n <cal-day>{{time().format("D")}}</cal-day>\n <cal-month>{{time().format("MMMM")}}</cal-month>'});t(80915);var qc=[{id:"firstName",label:"Sort by First Name"},{id:"lastName",label:"Sort by Last Name"},{id:"random",label:"Random Order Each Day"}],mc=[{id:"firstLast",label:"First Name, Last Name"},{id:"lastFirst",label:"Last Name, First Name"},{id:"firstOnly",label:"First Name Only"}];var fc={generateMenu:function(e,n){var t=c.Ay.clone(qc),o=c.Ay.clone(mc);c.Ay.each(t,function(e){return e.kind="order"}),c.Ay.each(o,function(e){return e.kind="format"}),c.Ay.last(t).divider=!0;var i=c.Ay.union(t,o);return c.Ay.each(i,function(t){t.select=function(){"order"===t.kind?e(t.id):n(t.id),y.changeStaffUserSettings({[t.kind]:t.id},O.school().id)},t.iconHtml=p().pureComputed(function(){var o="order"===t.kind?e():n();if(t.id===o)return rs.A.menuItemTick})}),i},registersSortOrderOptions:qc,registersNameFormatOptions:mc};function hc(e,n){var t=R.Ay.stringHashCode(e.id)^n,o=1e4*Math.sin(t);return o-Math.floor(o)}var Wc={sort:function(e,n){e.sort(function(e,t){var o,i;switch(n){case"firstName":o=e.pupil.forename+e.pupil.surname,i=t.pupil.forename+t.pupil.surname;break;case"lastName":o=e.pupil.surname+e.pupil.forename,i=t.pupil.surname+t.pupil.forename;break;case"random":var a=H()().startOf("day").valueOf();o=hc(e.pupil,a),i=hc(t.pupil,a)}return o===i?0:o<i?-1:1})}};p().components.register("registers-page",{viewModel:{createViewModel:function(){var e=[],n=O.isAlternativeProvision,t=O.isAlternativeProvision,o=p().pureComputed(function(){var e=c.Ay.flatten([O.school().regGroups(),O.school().coverGroups()]);return O.school().showGroupOfPupilsNotAllocatedToClass&&e.push({id:-1,name:"No Group"}),e}),i=p().observable();function a(){var e,n=O.school(),t=o();n.selectedRegGroupId&&(e=t.find(function(e){return e.id===n.selectedRegGroupId})),e||(e=t[0]),i(e)}e.push(o.subscribe(a)),a();var r=p().observable();e.push(i.subscribe(function(e){O.school().selectedRegGroupId=null==e?void 0:e.id,E(r,!0)}));var l=p().observable(O.school().registersSortOrder),d=p().observable(O.school().registersNameFormat),u=fc.generateMenu(l,d),A=p().observableArray(),q=p().pureComputed(function(){var e=A();return O.school().hideDualRegistrationPupils?c.Ay.filter(e,function(e){var n=e.session();return n&&610!==n.entry().code}):e}),m=p().pureComputed(function(){var e,n;return(null===(e=A())||void 0===e?void 0:e.length)!==(null===(n=q())||void 0===n?void 0:n.length)}),f=p().pureComputed(function(){return O.isAlternativeProvision()?"children":"pupils"}),h=p().pureComputed(function(){return"Show me our current ".concat(f())}),W=p().observable(),g=p().pureComputed(function(){return c.Ay.filter(q(),function(e){var n=e.session().entry().code;return n===Tt.A.noMark||n===Tt.A.remoteNoMark})}),v=p().observable([]);function b(e){var n=v();return c.Ay.without(c.Ay.map(e,function(e){return c.Ay.find(n,function(n){return n.id===e})}),void 0)}var w=p().pureComputed(function(){return v().length&&tc.selectedName()===tc.am}),k=p().pureComputed(function(){var e=W();if(e&&!e.lunchChoice.isComplete()){var n=e.lunchChoice.options();if(n.length)return b(c.Ay.last(n).nextOptionIds)}return c.Ay.filter(v(),function(e){return"extra"!==e.type})});k.subscribe(function(e){c.Ay.each(e,function(e,n){return e.key((n+1).toString())})});var x=p().pureComputed(function(){return c.Ay.filter(q(),function(e){return e.requiresLunchChoice()&&!e.lunchChoice.isComplete()})}),T=p().pureComputed(function(){return c.Ay.find(q(),function(e){return e.lunchPickerVisible()})}),S=p().pureComputed(function(){return c.Ay.filter(k(),function(e){return"schoolLunch"===e.type}).length>1}),C=p().pureComputed(function(){var e=q(),n=c.Ay.filter(e,function(e){return e.isAbsent()}).length,t=c.Ay.filter(e,function(e){return e.isPresent()}).length;if(n){if(t){var o="".concat(t,t>1?" pupils are":" pupil is");return"".concat(o," present and ").concat(n," absent.")}return"All ".concat(n<2?"":n," pupils are absent.")}return"All ".concat(t<2?"":t," pupils are present.")}),P=!1;function I(){M()(document).off("keypress.mark"),M()(document).off("keydown.mark"),P=!1}function L(n,t,o){n.pupilName=p().pureComputed(function(){var e=n.pupil;switch(d()){case"firstLast":return"".concat(e.forename," ").concat(e.surname);case"lastFirst":return"".concat(e.surname,", ").concat(e.forename);case"firstOnly":return c.Ay.chain(o).without(n).some(function(n){return n.pupil.forename===e.forename}
1).value()?"".concat(e.forename," ").concat(e.surname.trim().charAt(0),"."):e.forename}}),n.session=p().pureComputed(function(){var e=tc.selectedName();return c.Ay.find(n.sessions,function(n){return n.slotName===e})}),c.Ay.each(n.sessions,function(e){e.entry=p().observable(e.entry)}),n.lunchChoice||(n.lunchChoice={optionIds:[]}),n.lunchChoice.optionIds=p().observableArray(n.lunchChoice.optionIds),n.lunchChoice.setOptionIdsFromBackEnd=function(e){n.lunchPickerVisible()||n.lunchChoice.optionIds(e)},n.lunchChoice.options=p().pureComputed(function(){return b(n.lunchChoice.optionIds())}),n.lunchChoice.isComplete=p().pureComputed(function(){if(w()&&(n.isPresent()||n.postingPresent())){var e=c.Ay.last(n.lunchChoice.options());return e&&c.Ay.isEmpty(e.nextOptionIds)}return!0}),n.lunchChoice.text=p().pureComputed(function(){var e=n.lunchChoice.options();if(e.length){var t=c.Ay.map(e,function(e){return e.text});return c.Ay.reduce(t,function(e,n){return"".concat(e,", ").concat(n)})}return"No lunch choice"});var i=Tt.A.mappings,a=Tt.A.codes[120],s=Tt.A.codes[20];n.isPresent=p().pureComputed(function(){var e=Tt.A.codes[n.session().entry().code];return(e.remoteMapping||e.mapping)===i[1]||e===a}),n.isAbsent=p().pureComputed(function(){var e=Tt.A.codes[n.session().entry().code],t=e.remoteMapping||e.mapping;return!c.Ay.contains([i[0],i[1]],t)&&e!==a}),n.isLate=p().pureComputed(function(){var e=n.session().entry().code;return e===s.code||e===a.code}),n.hasMark=p().pureComputed(function(){return n.isPresent()||n.isAbsent()}),n.isComplete=p().pureComputed(function(){return n.hasMark()&&n.lunchChoice.isComplete()}),n.presentish=p().pureComputed(function(){return n.isPresent()&&!n.posting()||n.postingPresent()||n.postingLunchChoice()}),n.absentish=p().pureComputed(function(){return n.isAbsent()&&!n.posting()||n.postingAbsent()}),n.isRemoteLearner=p().pureComputed(function(){return!!Tt.A.codes[n.session().entry().code].remoteMapping}),n.requiresLunchChoice=p().pureComputed(function(){return w()&&!n.isRemoteLearner()}),n.markTooltipsEnabled=p().pureComputed(function(){return!rc.on()}),n.hasFocus=p().pureComputed({read:function(){return n===W()},write:function(e){e?W(n):W()===n&&W(void 0)}}),n.hasHover=p().observable(),n.setHover=function(e){return function(){return n.hasHover(e)}},n.postingPresent=p().observable(),n.postingAbsent=p().observable(),n.postingNoMark=p().observable(),n.postingLunchChoice=p().observable(),n.posting=p().pureComputed(function(){return n.postingPresent()||n.postingAbsent()||n.postingNoMark()||n.postingLunchChoice()}),n.confirmAndMark=function(e,t,o){var i=!1;if(n.hasMark()){var a=n.session().entry().posted;a&&(!a.by||a.by.name!==O.user().fullName()||(new Date).getTime()-a.to>1e4)&&(i=!0)}var s=function(){var i=e===Tt.A.present||e===Tt.A.remotePresent?n.postingPresent:ic.isAbsentCodeValue(e)?n.postingAbsent:n.postingNoMark;uc.post(tc.selectedName(),[{pupilId:n.pupil.id,code:e,posting:i}],t),o&&o()};i?(j.pupilItem(n),j.proceed=s):s()},n.tooltipEnabled=p().observable(!0),n.hasHover.subscribe(function(e){e&&n.tooltipEnabled(!0)}),n.lunchPickerVisible=p().observable(),e.push(tc.selectedName.subscribe(function(){n.lunchPickerVisible(!1)})),n.hasFocus.subscribe(function(e){e||n.lunchPickerVisible(!1)}),n.postingLunchChoice.subscribe(function(e){e&&n.lunchPickerVisible(!1)}),n.showLunchPicker=function(){n.lunchPickerVisible(!0),setTimeout(function(){return n.hasFocus(!0)},1)};var r=YM.createDelayedObservable(n.lunchPickerVisible,200);function M(){var e=p().observable();return{open:e,toggle:function(t,o){var i=e();return G(),n.markTooltipsEnabled()&&e(!i),o.stopPropagation(),!1}}}n.overlayText=p().pureComputed(function(){return!n.requiresLunchChoice()||n.lunchChoice.isComplete()||n.lunchPickerVisible()?n.presentish()||r()?"Mark Absent":n.absentish()?"Clear Mark":"Mark Present":"Choose Lunch"}),n.diameter=p().observable(124),n.lunchOptions=p().pureComputed(function(){var e,t=k(),o=n.diameter()/2,i=21.5,a=o+29,s=49.45/a,r=c.Ay.filter(t,function(e){return"schoolLunch"===e.type}).length,M=(e=t.length-r,(r-1)/2*s+Math.PI+(e-1)/2*s);return c.Ay.map(t,function(e,t){var c=r<=1||t<r?t*s:M-(t-r)*s,l=Math.round(o-Math.cos(c)*a-i-1)+"px",d=Math.round(o+Math.sin(c)*a-i-1)+"px";return n.lunchPickerVisible.subscribe(function(n){n||e.setActive(!1)()}),{option:e,top:l,left:d}})}),n.tap=function(e,t){var o=n.lunchPickerVisible();c.Ay.each(q(),function(e){return e.lunchPickerVisible(!1)});var i=n.isRemoteLearner();n.presentish()?!n.requiresLunchChoice()||n.lunchChoice.isComplete()||o?n.confirmAndMark(ic.getAbsentCodeValue(i),!0,function(){n.hasFocus(!0),$()}):n.lunchPickerVisible(!0):n.absentish()?n.confirmAndMark(ic.getNoMarkCodeValue(i),!0,function(){n.hasFocus(!0),$()}):n.confirmAndMark(ic.getPresentCodeValue(i),!0,function(){n.hasFocus(!0),n.requiresLunchChoice()?(n.lunchPickerVisible(!0),clearTimeout(R)):$()}),t&&t.stopPropagation()},n.click=function(e,t){n.tap(e,t),n.tooltipEnabled(!1)},n.presentTooltip=M(),n.absentTooltip=M(),n.tooltips=[n.presentTooltip,n.absentTooltip]}function E(e,n){function t(e){cc.mapRegistersData(e);var t=c.Ay.sortBy(A(),["pupil","id"]),o=c.Ay.sortBy(e.pupilItems,["pupil","id"]),i=c.Ay.zip(t,o),a=o.length!==t.length||c.Ay.find(i,function(e){return!c.Ay.isEqual(e[0].pupil,e[1].pupil)});a?(c.Ay.each(e.pupilItems,L),A(e.pupilItems),N()):c.Ay.each(i,function(e){c.Ay.each(c.Ay.zip(e[0].sessions,e[1].sessions),function(e){e[0].entry(e[1].entry)}),e[0].postingLunchChoice()||e[0].lunchChoice.setOptionIdsFromBackEnd(e[1].lunchChoice?e[1].lunchChoice.optionIds:[])});var s=JSON.stringify(e.lunchOptions);e.lunchOptions.raw=s,c.Ay.each(e.lunchOptions,function(e,n){e.key=p().observable(),e.colour=e.colour||li.A[e.type].colour,e.active=p().observable(),e.chosen=p().pureComputed(function(){var n=c.Ay.find(q(),function(e){return e.lunchPickerVisible()});if(n){var t=n.lunchChoice.options();return c.Ay.find(t,function(n){return n.id===e.id})}}),e.choose=function(n,t,o){if(o||(o=c.Ay.find(q(),function(e){return e.lunchPickerVisible()})),o){if(o.lunchChoice.isComplete()?o.lunchChoice.optionIds([e.id]):o.lunchChoice.optionIds.push(e.id),o.lunchChoice.isComplete()){var i={pupilId:o.pupil.id,lunchChoice:{optionIds:o.lunchChoice.optionIds()},posting:o.postingLunchChoice};uc.post(tc.selectedName(),[i]),$()}return t&&t.stopPropagation(),!1}},T.subscribe(function(n){n||e.active(!1)}),e.setActive=function(n){return function(){T()&&e.active(n)}},e.icon=p().pureComputed(function(){if(!S()||"schoolLunch"!==e.type)return ft[e.type]}),e.css={isDark:ci(e.colour),choosable:T,chosen:e.chosen,active:e.active},e.css[e.type]=!0,e.text=e.description||e.label||"Option ".concat(n+1)});var r=v();r&&c.Ay.isEqual(s,r.raw)||v(e.lunchOptions),q().length&&!n||U(),H()}var o=i();if(!o)return H(),void t({pupilItems:[],lunchOptions:[]});var a={regGroupId:o.id};n&&(a.changed=n),y.getRegGroupRegisters(O.school().id,a,e,t,H)}function N(){Wc.sort(A,l())}function F(e,n){var t=q();c.Ay.each(n.marks,function(e){var o=c.Ay.find(t,function(n){return n.pupil.id===e.pupilId});if(o){if(void 0!==e.code){var i=c.Ay.find(o.sessions,function(e){return e.slotName===n.slotName}),a=c.Ay.clone(i.entry());a.code=e.code;var r=(new Date).getTime();a.posted||(a.posted={}),a.posted.from=r,a.posted.to=r,a.posted.by={name:s.m.user().fullName()},i.entry(a)}e.lunchChoice&&o.lunchChoice.setOptionIdsFromBackEnd(e.lunchChoice.cleared?[]:e.lunchChoice.optionIds)}})}e.push(W.subscribe(function(e){e?function(){if(!P){var e=function(e,n,t){var o=q(),i=c.Ay.indexOf(o,e),a=n?c.Ay.rest(o,i+1):c.Ay.first(o,i),s=t?c.Ay.filter(a,function(e){return!e.isComplete()}):o,r=c.Ay.indexOf(s,e),M=Math.min(Math.max(r+n,0),s.length-1);W(s[M])};M()(document).on("keypress.mark",function(n){var t=W(),o=n.ctrlKey||n.altKey||n.metaKey;if(t&&!o){var i=String.fromCharCode(n.which).toUpperCase(),a=t.isRemoteLearner(),s=function(){return e(t,1,!0)};if(c.Ay.contains(["P","/","\\"],i)){var r=function(){t.requiresLunchChoice()?t.lunchPickerVisible(!0):s()};t.isPresent()||t.postingPresent()?r():t.confirmAndMark(ic.getPresentCodeValue(a),!1,r)}else if(c.Ay.contains(["A","N"],i))t.isAbsent()||t.postingAbsent()?s():t.confirmAndMark(ic.getAbsentCodeValue(a),!1,s);else if(c.Ay.contains(["C","-"],i))t.hasMark()&&!t.postingNoMark()?t.confirmAndMark(ic.getNoMarkCodeValue(a),!1,s):s();else if(w()){var M=c.Ay.find(k(),function(e){return e.key()===i});if(M){var l=function(){M.choose(null,null,t),t.lunchChoice.isComplete()?s():t.lunchPickerVisible(!0)};t.isPresent()||t.postingPresent()?l():t.confirmAndMark(Tt.A.present,!1,l)}}}}),M()(document).on("keydown.mark",function(n){var t=W();t&&(37===n.keyCode?e(t,-1):39===n.keyCode?e(t,1):13===n.keyCode&&t.tap())}),P=!0}}():I()})),e.push(l.subscribe(N)),e.push(tc.selectedName.subscribe(N)),M()(document).on("marksPosted",F);var R,D,B,j=function(){var e=p().observable(),n=p().observable();e.subscribe(function(e){return n(void 0!==e)});var t=p().observable();return n.subscribe(function(e){e&&setTimeout(function(){return t(!0)}
1,1)}),{pupilItem:e,visible:n,noHasFocus:t,yes:function(){n(!1),j.proceed()},no:function(){n(!1),e().hasFocus(!0)}}}();function $(){clearTimeout(R),R=setTimeout(function(){M()(document).trigger("resetTileScroll")},1500)}function U(){clearTimeout(D),D=setTimeout(function(){var e=c.Ay.find(q(),function(e){return!e.isComplete()});e&&e.hasFocus(!0)},1e3)}function H(){V(),B=setTimeout(E,15e3)}function V(){B&&clearTimeout(B)}function G(){c.Ay.each(q(),function(e){c.Ay.each(e.tooltips,function(e){return e.open(!1)})})}return e.push(tc.selectedName.subscribe(U)),M()(document).on("touchend",G),E(),tc.rollover.start(),{regGroups:o,selectedRegGroup:i,switchingClass:r,slots:tc,settingsMenuItems:u,fullScreen:rc,enterFullScreen:function(){rc.enter(document.body)},pupilItems:q,hasHiddenPupils:m,childrenOrPupilsWord:f,showChildrenOrPupilsUtterance:h,pending:g,itemWithFocus:W,markAllAbsent:function(){var e=c.Ay.map(g(),function(e){return{pupilId:e.pupil.id,code:ic.getAbsentCodeValue(e.isRemoteLearner()),posting:e.postingAbsent}});uc.post(tc.selectedName(),e)},summary:C,appIcons:rs.A,lunchOptionsVisible:w,lunchOptions:v,lunchOptionsToPresent:k,schoolPortal:ua,lunchChoicesPending:x,menuHeaderVisible:S,lunchPickerVisible:T,icons:ft,overwriteAlert:j,withApMarkRendering:n,marksControlledByStudybugs:t,dispose:function(){M()(document).off("touchend",G),M()(document).off("marksPosted",F),c.Ay.each(e,function(e){return e.dispose()}),I(),D&&clearTimeout(D),V(),tc.rollover.stop()}}}},template:'\n <main-content data-bind="css: {lunchPicker: lunchPickerVisible}">\n {{#ifnot selectedRegGroup()}}\n <div class="no-reg-groups">\n <h2>You donât currently have access to any registers.</h2>\n <p>If this doesnât seem right, please reach out to our\n <enquiry-popup params="kind: \'support\', label: \'support team\'"></enquiry-popup>.</p>\n </div>\n {{/if}}\n {{#if selectedRegGroup()}}\n <info-bar>\n {{#if selectedRegGroup()}}\n <bar-section>\n <registers-status>\n {{#ifnot pending().length || lunchChoicesPending().length}}\n <status-icon>{{{icons.presentMark}}}</status-icon>\n {{/ifnot}}\n <status-body>\n {{#if pending().length}}\n <div class="status-summary">{{pending().length}} pupil{{pending().length == 1 ? " needs" : "s need"}} to be marked</div>\n <div class="status-action"><a href="#" data-bind="click: markAllAbsent">Mark Absent</a></div>\n {{/if}}\n {{#if lunchChoicesPending().length}}\n <div class="status-summary">{{lunchChoicesPending().length}}\n pupil{{lunchChoicesPending().length == 1 ? " needs" : "s need"}} a lunch choice</div>\n {{/if}}\n {{#ifnot pending().length || lunchChoicesPending().length}}\n <div class="status-title">All done!</div>\n <div class="status-summary">{{summary}}</div>\n {{/ifnot}}\n </status-body>\n </registers-status>\n </bar-section>\n {{/if}}\n <bar-section>\n <sb-calendar></sb-calendar>\n </bar-section>\n <bar-section>\n <sb-clock></sb-clock>\n </bar-section>\n </info-bar>\n <title-area>\n <title-bar>\n {{#if selectedRegGroup()}}\n <bar-item class="className">\n {{#if regGroups().length == 1}}\n <h2>{{selectedRegGroup().name}}</h2>\n {{/if}}\n {{#if regGroups().length > 1}}\n <sw-picker params="items: regGroups, selectedItem: selectedRegGroup"><h2>{{name}}</h2></sw-picker>\n {{/if}}\n </bar-item>\n <bar-item>\n <sw-radio params="{items: slots.names, selectedItem: slots.selectedName}">\n {{$data.toUpperCase()}}\n </sw-radio>\n </bar-item>\n <bar-item>\n <sw-menu params="items: settingsMenuItems">\n {{{appIcons.settings}}}\n </sw-menu>\n </bar-item>\n {{#if fullScreen.supported}}\n <bar-item>\n {{#ifnot fullScreen.on}}\n <a class="button fullScreen" href="#"\n data-bind="click: enterFullScreen">{{{icons.enterFullScreen}}}<span>Interactive Mode</span></a>\n {{/ifnot}}\n {{#if fullScreen.on}}\n <a class="button fullScreen" href="#"\n data-bind="click: fullScreen.leave">{{{icons.leaveFullScreen}}}<span>Exit Interactive Mode</span></a>\n {{/if}}\n </bar-item>\n {{/if}}\n {{/if}}\n </title-bar>\n </title-area>\n {{#if hasHiddenPupils}}
1\n <span class="hiddenPupilsWarning">\n <p>Not seeing {{childrenOrPupilsWord()}} you are expecting?</p>\n <p class="footnote">\n You need to update their required sessions for today. Review your {{childrenOrPupilsWord()}}\n <assist-link params="utterance: {text: showChildrenOrPupilsUtterance() }">here</assist-link>.\n </p>\n </span>\n {{/if}}\n <pupil-tile-layout params="items: pupilItems,\n lunchOptionsVisible: lunchOptionsVisible,\n lunchOptions: lunchOptions,\n lunchOptionsToPresent: lunchOptionsToPresent"></pupil-tile-layout>\n {{#if lunchOptionsVisible}}\n <lunch-options\n data-bind="style: {\'margin-bottom\': fullScreen.on() ? 0 : schoolPortal.assistantInputBarHeight() + \'px\'}">\n {{#if menuHeaderVisible}}\n <menu-header>\n <div>\n <div class="icon">{{{icons.schoolLunch}}}</div>\n <div class="text">Lunch<br>Menu</div>\n </div>\n </menu-header>\n {{/if}}\n {{#foreach lunchOptionsToPresent}}\n <lunch-option data-bind="style: {background: colour}, css: css,\n event: {mouseenter: setActive(true),\n mouseleave: setActive(false),\n mousedown: choose}">\n <div>\n <div class="icon">{{#if icon}}{{{icon}}}{{/if}}</div>\n <div class="text"><option-text>{{text}}</option-text></div>\n </div>\n {{#if chosen}}\n {{{$component.icons.lunchChoiceTick}}}\n {{/if}}\n {{#if $component.itemWithFocus}}\n <option-key>{{key}}</option-key>\n {{/if}}\n </lunch-option>\n {{/foreach}}\n </lunch-options>\n {{/if}}\n {{#if switchingClass}}\n <div class="switching"></div>\n {{/if}}\n {{#with overwriteAlert}}\n <div data-bind="popover: {isModal: true, dim: true, noLabel: true, open: visible}">\n <div class="popoverBody">\n <div class="body overwriteAlert">\n {{#if pupilItem}}\n {{#ifnot $parent.fullScreen.on}}\n <p>Are you sure you want to overwrite this mark for\n {{{pupilItem().pupilName}}}{{#if pupilItem().session().entry().notes}} (notes will be preserved){{/if}}?</p>\n <register-mark-history params="history: [pupilItem().session().entry()],\n slotName: $parent.slots.selectedName,\n withApMarkRendering: $parent.withApMarkRendering,\n marksControlledByStudybugs: $parent.marksControlledByStudybugs">\n </register-mark-history>\n {{/ifnot}}\n {{#if $parent.fullScreen.on}}\n <p>Are you sure you want to overwrite the existing mark for {{{pupilItem().pupilName}}}?<br>Leave\n Interactive Mode to view the mark and any notes.</p>\n {{/if}}\n <button class="button button-primary" data-bind="click: no, hasFocus: noHasFocus">No</button>\n <button class="button button-secondary" data-bind="click: yes">Yes</button>\n {{/if}}\n </div>\n </div>\n </div>\n {{/with}}\n {{/if}}\n </main-content>'});var gc=t.p+"d521578511204c19b7e9.svg",vc=t.p+"b131b7fd16f3d299750f.svg",bc=t.p+"587c569fb3bd67d9c3f8.svg",yc=t.p+"94541a024de987a93aae.svg",wc=t.p+"8020aab9d6dadc6cbac1.svg",kc=t.p+"b6f6aab1f8bb63d8e654.svg";function xc(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function Tc(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};
1n%2?xc(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):xc(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}p().components.register("add-ons-menu",{viewModel:function(){var e=p().pureComputed(function(){return q.A.m.school&&q.A.m.school()?q.A.m.school().addOns:{}}),n=p().observable(!1),t=[{title:"Attendance",addOn:"attendance",description:"Maximize attendance,<br>efficiently",imgSrc:vc,url:"/about/schools/attendance"},{title:"Wellbeing",addOn:"wellbeing",description:"Early intervention for<br>childrenâs mental health",imgSrc:wc,url:"/about/schools/wellbeing"},{title:"Actions",addOn:"logging",description:"Plan, coordinate and record actions effectively",imgSrc:gc,url:"#",onClick:function(e,t){return n(!0),t.preventDefault(),t.stopPropagation(),!1}},{title:"Registers",addOn:"registers",description:"Interactive, instant<br>register-taking",imgSrc:yc,url:"/about/schools/registers"},{title:"Parent Time",addOn:"parentTime",description:"Video meetings for<br>the new normal",imgSrc:bc,url:"/about/schools/parenttime"}];return{enquiryPopupIsOpen:n,actionsPopupMessage:"I'm interested in learning more about Studybugs Actions. Please give me a call on [NUMBER].",addOnCards:t.map(function(n){return Tc(Tc({},n),{},{enabled:p().pureComputed(function(){return e()[n.addOn]}),onClick:n.onClick||function(){return!0}})})}},template:'\n {{#foreach addOnCards}}\n <a href="{{url}}" class="addOn"\n data-bind="css: {enabled: enabled}, class: addOn, click: onClick">\n {{#if enabled}}\n <add-on-enabled><img src="'.concat(kc,'"/></add-on-enabled>\n <div data-bind="tooltip: {position: \'above\'}">Enabled</div>\n {{/if}}\n <add-on-thumb><img src="{{imgSrc}}"/></add-on-thumb>\n <add-on-name>{{title}}</add-on-name>\n <add-on-desc>{{{description}}}</add-on-desc>\n </a>\n {{/foreach}}\n <enquiry-popup params="\n isOpen: enquiryPopupIsOpen,\n kind: \'enquiry\',\n initialMessage: actionsPopupMessage,\n submitButtonClass: \'button button-primary\'\n "></enquiry-popup>\n ')}),p().components.register("add-ons-page",{template:"\n <main-content>\n <h2>Studybugs Add-Ons</h2>\n <p>Maximize attendance, free up teachersâ time, improve parental engagement and more â\n explore whatâs available below.</p>\n <p>To arrange a demo or enable an add-on,\n please <school-enquiry-popup params=\"kind: 'enquiry', label: 'get in touch'\"></school-enquiry-popup>.</p>\n <add-ons-menu></add-ons-menu>\n </main-content>"});t(43461);p().components.register("school-assistant-dashboard",{viewModel:function(){return{dashboard:Ji.ze}},template:'\n <main-content>\n {{#ifnot dashboard}}\n <div class="assist-dashboard-holding">\n <spinner class="dark"></spinner>\n </div>\n {{/ifnot}}\n {{#if dashboard}}\n <assist-dashboard></assist-dashboard>\n {{/if}}\n </main-content>'}),p().components.register("msg-prefiller",{viewModel:{createViewModel:function(e,n){var t=e.categoryName,o=e.recipient,i=e.containerTag,a=e.subjectTag,s=e.bodyTag,r=e.removeExcessSpaces||!0,c=e.templateName,l=n.templateNodes.find(function(e){return e.localName==i}),d=l.getElementsByTagName(a)[0],u=l.getElementsByTagName(s)[0];var A,p=(A=d.innerText.trim(),r?A.replace(/\s{2,}/g," "):A),q=function(e){if(r){for(var n=e.getElementsByTagName("p"),t="",o=0;o<n.length;o++)t+=n[o].innerText.trim().replace(/\s{2,}/g," "),o!==n.length-1&&(t+="\n\n");return t.trim()}return e.innerText.trim()}(u);return{populateMessage:function(){var e=new Un({categoryName:t,recipient:o,subject:p,text:q,templateName:c});M()(document).trigger("messages.prefill-new-message",[e])}}}},template:"{{#template {nodes: $componentTemplateNodes, data: $data}}}{{/template}}"});var Sc=p().observable(null),Cc=p().observable(null);p().components.register("ap-manager",{viewModel:function(){var e=[],n=null,t=p().observable(!0);function o(e){var o;Cc()!==e.id&&(Sc(null),Cc(null),null===(o=n)||void 0===o||o.dispose(),e.addOns.apManager&&(n=(0,h.En)(y.getApManagerDashboard,{schoolId:e.id},t,function(n){Sc(n),Cc(e.id)}
1)))}return o(I.school()),e.push(I.school.subscribe(o)),{dashboard:Sc,dispose:function(){var t;null===(t=n)||void 0===t||t.dispose(),e.forEach(function(e){e.dispose()})}}},template:'\n <div class="dashboard-page">\n <main-content>\n {{#if dashboard}}\n <assist-dashboard params="dashboard: dashboard, readOnly: true"></assist-dashboard>\n {{/if}}\n </main-content>\n </div>'});t(78350),t(30237),t(30531);var Pc=t(13034),Ic=["apiPath"];p().components.register("progress-bar",{viewModel:function(e){var n=e.value,t=p().pureComputed(function(){var e=100*p().unwrap(null!=n?n:0);return Math.min(Math.max(Math.round(e),0),100)});return{fillWidth:p().pureComputed(function(){var e=t();return 0===e?"2px":"".concat(e,"%")}),progress:t}},template:'\n <div role="progressbar" aria-valuemin="0" aria-valuemax="100"\n data-bind="attr: { aria-valuenow: progress }, style: { width: fillWidth }"></div>\n '}),p().bindingHandlers.htmlWithBindings={init:function(){return{controlsDescendantBindings:!0}},update:function(e,n,t,o,i){p().utils.setHtml(e,n()),p().applyBindingsToDescendants(i,e)}};var Oc=t(25065);function Lc(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function Ec(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?Lc(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Lc(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}var Nc="Mark As Done",Fc="Mark As Incomplete",Rc="Open Instructions",Dc="Revisit Instructions";p().components.register("welcome-flow-item",{viewModel:function(e){var n=[],t=e.item,o=e.flowData,i=p().observable(t.completed()),a=null;n.push(t.completed.subscribe(function(e){a&&clearTimeout(a),a=setTimeout(function(){i(e),a=null},Hc.ITEM_STATE_CHANGE_DELAY)}));var s=p().pureComputed(function(){var e;return i()&&null!==(e=t.completedContent.description)&&void 0!==e?e:t.content.description}),r=p().pureComputed(function(){var e;return i()&&null!==(e=t.completedContent.imgUrl)&&void 0!==e?e:t.content.imgUrl}),c=p().pureComputed(function(){var e,n;return t.completed()?null!==(e=t.completedContent.markDoneLabel)&&void 0!==e?e:Fc:null!==(n=t.content.markDoneLabel)&&void 0!==n?n:Nc}),l=p().pureComputed(function(){var e,n;return i()?null!==(e=t.completedContent.actionLabel)&&void 0!==e?e:Dc:null!==(n=t.content.actionLabel)&&void 0!==n?n:Rc}),d=p().pureComputed(function(){return i()||t.content.markDoneIsPrimaryAction?"button-secondary":"button-primary"}),A=p().pureComputed(function(){var e=i(),n=f();return e||n&&!t.content.markDoneIsPrimaryAction?"button-secondary":"button-primary"}),q=p().pureComputed(function(){var e=i()&&t.completedAction||t.action;return!!e&&"href"in e}),m=p().pureComputed(function(){var e=i()&&t.completedAction||t.action;return e?"assistLink"in e?(0,u.J)((0,Gn.c)(),e.assistLink.utteranceText,e.assistLink.invocable):"path"in e?t.orgBasePath()+e.path:e.href:""}),f=p().pureComputed(function(){return!!(i()&&t.completedAction||t.action)});return Ec(Ec({},t),{},{circleIcon:Yn.l3.circleIcon,checkMarkCircleIcon:Yn.l3.checkMarkCircleIcon,checkMarkIcon:Oc,animationDelayedComplete:i,description:s,imgUrl:r,markDoneLabel:c,hasAction:f,actionLabel:l,actionHref:m,actionIsExternalLink:q,actionButtonClass:d,markAsDoneButtonClass:A,flowData:o,handleAction:function(e,n){var o=i(),a=o&&t.completedAction||t.action;if(a){if(!o&&a.marksAsDone&&t.onToggleDone(t),"assistLink"in a){var s={text:a.assistLink.utteranceText,isScala:a.assistLink.isScala,caretPosition:a.assistLink.caretPosition};return a.assistLink.invocable?M()(document).trigger("invokeUtterance",[s]):M()(document).trigger("selectUtterance",[s]),!1}return!("path"in a)||(n.preventDefault(),M()(document).trigger("goto",[t.orgBasePath()+a.path]),!1)}},dispose:function(){n.forEach(function(e){return e.dispose()}),a&&clearTimeout(a)}})},template:'\n <div class="collapsible checklist-item"\n data-bind="css: {completed: completed, crossSell: $data.isCrossSell}, collapsible: { open: open, animate: true }">\n <div class="collapse-control">\n <div>
1\n <span class="item-tick-box" aria-label="{{ completed() ? \'Done\' : \'\' }}">\n {{{completed() ? checkMarkCircleIcon: circleIcon}}}\n </span>\n <span class="wf-item-title">{{title}}</span>\n </div>\n </div>\n <div class="collapse-content">\n <div class="item-description">\n {{#if imgUrl}}\n <img src="{{imgUrl}}"/>\n {{/if}}\n <div data-bind="htmlWithBindings: description"></div>\n </div>\n <div class="item-actions">\n {{#if hasAction}}\n <a class="actionButton button"\n data-bind="\n click: handleAction,\n attr: {\n href: actionHref,\n target: actionIsExternalLink() ? \'_blank\' : null\n },\n class: actionButtonClass\n ">{{actionLabel}}</a>\n {{/if}}\n <button class="markAsDone button" data-bind="\n click: onToggleDone,\n class: markAsDoneButtonClass\n ">\n <span>{{markDoneLabel}}</span>\n {{#ifnot completed}}{{{checkMarkIcon}}}{{/ifnot}}\n </button>\n </div>\n </div>\n </div>\n '});var Bc=t(92808),jc=["state","sectionOrder","header","completedHeader"];function $c(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function Uc(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?$c(Object(t),!0).forEach(function(n){(0,L.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):$c(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}var Hc={ITEM_STATE_CHANGE_DELAY:Pc.q+10};p().components.register("welcome-flow",{viewModel:function(e){var n=e.data,t=[],o=p().observable(),i=p().observable(n().apiPath),a=p().observable(""),s=p().observable({}),r=p().observable(),M=p().observable(),l=p().observable(),d=p().observable(),u=p().observable(),A=p().observable(),q=p().observable([]),m=p().observable(),h=p().observable(),W=p().observable();function g(e){var n;s(e.sectionTitles),a(e.orgBasePath),r(e.onCompleteChange),M(e.onItemCompleted),i(e.apiPath),(n=e.apiPath)&&function(e,n,t){var o=e.apiPath;f.A.get({url:"".concat(o,"/welcome"),success:n,failure:t})}({apiPath:n},function(e){var n=e.state,t=e.sectionOrder,i=e.header,a=e.completedHeader,r=(0,Zn.A)(e,jc);o(n.completed),function(e,n){o()?(d((null==n?void 0:n.title)||e.title),u((null==n?void 0:n.subTitle)||e.subTitle),A((null==n?void 0:n.description)||e.description),m((null==n?void 0:n.imgUrl)||e.imgUrl)):(d(e.title),u(e.subTitle),A(e.description),m(e.imgUrl))}(i,a),function(e,n){var t=o(),i=s(),a=c.Ay.groupBy(e,function(e){var n=i[e.item.section].added;return t&&!e.completed&&e.added>t&&(void 0===n||n<t)?"newItems":e.item.section}),r=[],M=n.filter(function(e){return a[e]});if(t&&a.newItems){var l=p().observable(0),d=a.newItems.length;r.push({items:a.newItems.map(function(e,n){return b(e,0===n)}),title:"New Checklist Items",countCompleted:l,locked:p().observable(!1),percentCompleted:p().pureComputed(function(){return l()/d}),handleUnlock:function(){return!0}})}M.forEach(function(e){var n=a[e][0].item.section,o=s()[n].title,i=a[e].length,M=p().observable(a[e].reduce(function(e,n){return e+(n.completed?1:0)},0)),c=r[r.length-1],l=c&&c.countCompleted()===c.items.length,d=!!a[e].find(function(e){return e.completed}),u=!t&&c&&!l&&!d,A=!1,q=p().observable(u);r.push({items:a[e].map(function(n){var t;return(t=!(!n.item.isCrossSell||M()!==a[e].length)||!n.completed&&!A)&&(A=!0),b(n,t)}),title:o,countCompleted:M,locked:q,handleUnlock:q?function(){if(!q())return!0;q(!1)}:void 0,percentCompleted:p().pureComputed(function(){return M()/i}),previousSectionTitle:r.length>0?r[r.length-1].title:void 0})}),q(r)}(n.items,t),W(r)})}function v(e){!function(e,n,t){var o=e.apiPath,i=(0,Zn.A)(e,Ic);f.A.post({url:"".concat(o,"/welcome/mark-complete"),data:JSON.stringify(i),success:n,failure:t})}({id:e.id,completed:!e.completed(),apiPath:i()},function(){return function(e){var n,t=!e.completed();e.completed(t),t&&(e.open(!1),null===(n=M())||void 0===n||n(e,q().flatMap(function(e){return e.items})));var o=q(),i=o.findIndex(function(n){return n.items.findIndex(function(n){return n===e})>=0}),a=o[i],s=a.countCompleted()+(t?1:-1);if(a.countCompleted(s),t){var c,d=!1,u=(c=[]).concat.apply(c,(0,Ao.A)(o.map(function(e){return e.items}))),A=u.find(function(n){if(d)return!n.completed();n===e&&(d=!0)});null==A||A.open(!0)}s===a.items.length&&i<o.length-1&&o[i+1].locked(!1);var p,m,f=!o.find(function(e){return e.countCompleted()<e.items.length});f?(l(!0),null===(p=r())||void 0===p||p(!0)):null===(m=r())||void 0===m||m(!1)}(e)})}function b(e,n){var t=Uc(Uc({},e.item),{},{orgBasePath:a,added:e.added,open:p().observable(n),completed:p().observable(!!e.completed),onToggleDone:function(){return v(t)}});return t}return t.push(n.subscribe(function(e){return g(e)})),g(n()),{title:d,subTitle:u,description:A,checklists:q,titleImgUrl:m,lockIcon:Bc,checkMarkIcon:Oc,flowData:W,completionBody:h,dispose:function(){t.forEach(function(e){return e.dispose()})}}},template:'\n <div class="title-section">\n <div>\n <h1>{{title}}</h1>\n {{#if subTitle}}<p class="wf-sub-heading">{{subTitle}}</p>{{/if}}\n <p>{{description}}</p>\n </div>\n <div class="side-img">\n <img src="{{titleImgUrl}}">\n </div>\n </div>\n {{#foreach: checklists}}\n <div class="checklist" data-bind="css: { locked: locked }, click: $data.handleUnlock">\n <h2>{{title}}</h2>\n {{#if locked}}
1\n <span class="lock">{{{$component.lockIcon}}}</span>\n {{/if}}\n {{#ifnot locked}}\n <p>You completed <strong>{{countCompleted}}</strong> of <strong>{{items.length}}</strong> steps</p>\n <progress-bar params="value: percentCompleted"></progress-bar>\n {{#foreach: items}}\n <welcome-flow-item params="item: $data, flowData: $component.flowData"></welcome-flow-item>\n {{/foreach}}\n {{/ifnot}}\n </div>\n {{#if locked}}\n <div data-bind="tooltip: { position: \'above\' }">Click to unlock the {{title}}</div>\n {{/if}}\n {{/foreach}}\n '});var Vc={"ap-manager-setup":{title:"AP Manager Setup Checklist",added:new Date(2026,7,29).getTime()},setup:{title:"Setup Checklist"},"get-started":{title:"Getting Started Checklist"},learning:{title:"Learning Checklist"},"discover-more":{title:"Discover Studybugs"}};p().components.register("get-started",{viewModel:function(){var e,n,t="help"===(null===(e=(n=q.s.m).section)||void 0===e?void 0:e.call(n)[1]),o=p().observable(),i=p().observable(!1),a=p().observable(!1);function s(e,n){var t=n.filter(function(e){return!e.completed()});aa()||(0===t.length&&sa(!0),"ap-manager-setup"!==e.section||t.find(function(e){return"ap-manager-setup"===e.section})?0===t.length&&(a(!1),sa(!0),i(!0)):a()||(a(!0),i(!0)))}function r(e){a(!1),i(!1),o({sectionTitles:Vc,apiPath:v(e.id),orgBasePath:I.schoolPath("")||"",onItemCompleted:s})}var M=I.school.subscribe(r);return r(I.school()),{showCongratsDialog:i,welcomeFlow:o,welcomeFlowCompleted:aa,isApManagerCompletionMessage:a,handleCloseCongratsDialog:function(){if(aa()){var e=I.schoolPath("aps");e&&(0,l.gQ)(e)}else i(!1)},isDisplayedInHelpPages:t,dispose:function(){return M.dispose()},checkMarkIcon:Oc}},template:'\n {{#if welcomeFlow}}\n {{#if isDisplayedInHelpPages}}\n <welcome-flow params="data: welcomeFlow"></welcome-flow>\n {{/if}}\n {{#ifnot isDisplayedInHelpPages}}\n <main-content>\n <welcome-flow params="data: welcomeFlow"></welcome-flow>\n </main-content>\n {{/ifnot}}\n <div class="welcomeFlowCongrats"\n data-bind="popover: { open: showCongratsDialog, isModal: true, dim: true, noLabel: true, disableDismiss: true }">\n <div class="popoverTitle">Congratulations!</div>\n <div class="body">\n {{#if isApManagerCompletionMessage}}\n <p>Youâve finished setting up AP Manager.</p>\n {{/if}}\n {{#ifnot isApManagerCompletionMessage}}\n <p>Youâve completed your onboarding checklist!</p>\n {{/if}}\n {{#if welcomeFlowCompleted}}\n <p>Getting Started will now be available in the User Guide for future reference.</p>\n {{/if}}\n {{#ifnot welcomeFlowCompleted}}\n <p>Next up: Discover Studybugs</p>\n {{/if}}\n <div class="buttonRow">\n <button class="button button-primary" data-bind="click: handleCloseCongratsDialog">\n <span>OK</span>{{{checkMarkIcon}}}\n </button>\n </div>\n </div>\n </div>\n {{/if}}\n '});var Gc=t(73938);p().components.register("sync-settings",{viewModel:function(e){var n=p().observable(),t=[];t.push(p().computed(function(){var t,o=p().unwrap(e.schoolId),i=fe();o===(null===(t=O.school())||void 0===t?void 0:t.id)?n(i):(n(void 0),y.getSyncStatus(o,function(e){n(new Me(e))}))})),e.syncStatus&&t.push(n.subscribe(function(n){return e.syncStatus(n)}));return{syncStatus:n,goToSSInstructions:function(){(0,Ri.Q)(),M()(document).trigger("goto",[s.m.schoolPath("help/studybugssync")])},dispose:function(){c.Ay.each(t,function(e){return e.dispose()})}}},template:'\n {{#with syncStatus}}\n {{#if $data.mis}}\n {{#if mis.id === "sims"}}\n {{#ifnot syncClient}}\n <p>You have no Studybugs Sync installations active or awaiting activation.</p>\n {{/ifnot}}\n {{#with syncClient}}\n <p class="active">Studybugs Sync is installed and activated.</p>\n <table class="stats">\n <tr>\n <td class="statKey">Registered</td>\n <td>{{registered.format("HH:mm, dddd D MMMM Y")}}</td>\n </tr>\n <tr>\n <td class="statKey">IP address</td>\n <td>{{$data.ipAddress || "Unknown"}}</td>\n </tr>\n <tr>\n <td class="statKey">Status</td>\n <td>\n {{#if connected}}\n <i class="icon-ok"></i> Connected\n {{/if}}\n {{#ifnot connected}}\n <i class="icon-exclamation-sign"></i> Connection lost (last connected {{lastHeard.fromNow()}})\n {{/ifnot}}\n </td>\n </tr>\n </table>\n {{/with}}\n {{/if}}\n {{#if mis.id !== "sims"}}\n <p>{{summary}}</p>\n {{/if}}\n {{/if}}\n {{#ifnot $data.mis}}\n <p>You have no MIS sync configured.</p>\n {{/ifnot}}\n <p>To set up Studybugs Sync follow the instructions\n <a href="#" data-bind="click: $component.goToSSInstructions">here</a>.</p>\n {{/with}}'});t(2259);
1function zc(e,n){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!t){if(Array.isArray(e)||(t=function(e,n){if(e){if("string"==typeof e)return Yc(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Yc(e,n):void 0}}(e))||n&&e&&"number"==typeof e.length){t&&(e=t);var o=0,i=function(){};return{s:i,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,r=!1;return{s:function(){t=t.call(e)},n:function(){var e=t.next();return s=e.done,e},e:function(e){r=!0,a=e},f:function(){try{s||null==t.return||t.return()}finally{if(r)throw a}}}}function Yc(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,o=Array(n);t<n;t++)o[t]=e[t];return o}var _c={render:function(e,n){var t=e,o=[];!n&&!t.restrictions.length||t.pupilPicSyncEnabled||o.push("Pupil profile pictures will not be extracted.");var i,a=zc(t.restrictions);try{for(a.s();!(i=a.n()).done;){var s,r=i.value;switch(r.field){case"PupilData":s="Pupil data for ";break;case"ContactData":s="Pupil contact data for ";break;case"Names":s="The names of ";break;case"ContactDetails":s="The contact details of "}switch(r.scope){case"OffRollPupils":s+="off roll pupils ";break;case"PastAcademicYearPupils":s+="pupils from previous academic years ";break;case"AllContacts":s+="all contacts ";break;case"OffRollContacts":s+="pupil contacts linked only to off roll pupils "}switch(r.action){case"Remove":s+=" will not be extracted.";break;case"Redact":s+=" will be redacted."}o.push(s)}}catch(e){a.e(e)}finally{a.f()}return o}},Kc=function(e){return'\n <settings-divider data-bind="if: '.concat(e,'">\n <title-col><div></div></title-col>\n <body-col><div></div></body-col>\n </settings-divider>\n')},Jc=function(){return(0,j.A)(function e(n){var t=this;(0,B.A)(this,e),this._suspendUpdates=!1,this.school=void 0,this.gettingSettings=void 0,this.changingSettings=void 0,this.confirmAbsReps=void 0,this.matchParentalRespOnly=void 0,this.officeEmail=void 0,this.absRepEmail=void 0,this.emailText=void 0,this.emailMessages=void 0,this.licenceLinkText=void 0,this.showLicence=void 0,this.syncStatus=void 0,this.syncRestrictions=void 0,this.defaultRegistersSortOrder=void 0,this.defaultRegistersNameFormat=void 0,this.registersSortOrderOptions=void 0,this.registersNameFormatOptions=void 0,this.schoolListener=void 0,this.settings=void 0,this.dispose=this.dispose.bind(this),this.resetSettings=this.resetSettings.bind(this),this.getSettingsSuccess=this.getSettingsSuccess.bind(this),this.getSyncRestrictionsSuccess=this.getSyncRestrictionsSuccess.bind(this),this.changeSettings=this.changeSettings.bind(this),this.school=n,this.gettingSettings=p().observable(),this.changingSettings=p().observable(),this.confirmAbsReps=p().observable(),this.confirmAbsReps.subscribe(function(){t.changeSettings()}),this.matchParentalRespOnly=p().observable(),this.matchParentalRespOnly.subscribe(function(){t.changeSettings()}),this.officeEmail=p().observable(),this.absRepEmail=p().observable(),this.emailText=p().pureComputed(function(){var e=t.absRepEmail()||t.officeEmail(),n=t.officeEmail()||t.absRepEmail(),o=t.school().shortName;if(e){var i=n!==e?" for sickness and absence reports (and <span class='officeEmail'>".concat(n,"</span> for other messages)"):"";return"The address we have on file is <span class='officeEmail'>".concat(e,"</span>").concat(i,". ")}return"We donât currently have an email address on file for ".concat(o,". ")}),this.emailMessages=p().observable(),this.emailMessages.subscribe(function(){t.changeSettings()}),this.licenceLinkText=p().pureComputed(function(){var e=t.school().licenceState;return e.accepted?"Accepted on ".concat(H()(e.accepted).format(Gc.N3)):"Please review and accept"}),this.showLicence=function(e,n){t.school().id!==O.school().id?window.location.href="/school/".concat(t.school().id,"/messages?view=licence"):((0,Ri.Q)(),M()(document).trigger("openLicence"),n.stopPropagation())},this.syncStatus=p().observable(),this.syncStatus.subscribe(function(e){if(e)return y.getSyncRestrictions(t.school().id,function(e){return t.getSyncRestrictionsSuccess(e)})}),this.syncRestrictions=p().observableArray(),this.defaultRegistersSortOrder=p().observable(),this.defaultRegistersSortOrder.subscribe(function(){t.changeSettings()}),this.defaultRegistersNameFormat=p().observable(),this.defaultRegistersNameFormat.subscribe(function(){t.changeSettings()}),this.registersSortOrderOptions=c.Ay.clone(fc.registersSortOrderOptions),this.registersNameFormatOptions=c.Ay.clone(fc.registersNameFormatOptions),this.schoolListener=p().computed(function(){return y.getSettings(t.school().id,t.gettingSettings,function(e){return t.getSettingsSuccess(e)})})},[{key:"dispose",value:function(){return this.schoolListener.dispose()}},{key:"resetSettings",value:function(){var e=this.settings;e&&(this._suspendUpdates=!0,this.confirmAbsReps(e.confirmAbsenceReports),this.matchParentalRespOnly(e.matchParentalRespOnly),this.officeEmail(e.officeEmail),this.emailMessages(e.emailMessages),this.absRepEmail(e.absRepEmail),this.defaultRegistersSortOrder(c.Ay.find(this.registersSortOrderOptions,function(n){return n.id===e.defaultRegistersSortOrder})),this.defaultRegistersNameFormat(c.Ay.find(this.registersNameFormatOptions,function(n){return n.id===e.defaultRegistersNameFormat})),this.syncRestrictions.removeAll(),this.syncStatus(void 0),p().tasks.runEarly(),this._suspendUpdates=!1)}},{key:"getSettingsSuccess",value:function(e){this.settings=e,this.resetSettings()}},{key:"getSyncRestrictionsSuccess",value:function(e){this.syncRestrictions.removeAll();var n=this.syncStatus(),t=Boolean((null==n?void 0:n.mis)&&!n.mis.isManual),o=_c.render(e,t);p().utils.arrayPushAll(this.syncRestrictions,o)}},{key:"changeSettings",value:function(){var e=this;if(!this._suspendUpdates){var n,t,o={confirmAbsenceReports:this.confirmAbsReps(),matchParentalRespOnly:this.matchParentalRespOnly(),emailMessages:this.emailMessages(),defaultRegistersSortOrder:null===(n=this.defaultRegistersSortOrder())||void 0===n?void 0:n.id,defaultRegistersNameFormat:null===(t=this.defaultRegistersNameFormat())||void 0===t?void 0:t.id};y.changeSettings(this.school().id,o,this.changingSettings,function(n){return e.getSettingsSuccess(n)},function(){return e.resetSettings(),!1})}}}])}();function Xc(e){e.add({schoolPortal:{componentName:"school-portal"}});var n=d.A.create("#schoolsFragment",{messages:{componentName:"message-centre",title:"Studybugs â Messages"},calendar:{componentName:"calendar-page",title:"Studybugs â Calendar"},dashboard:{componentName:"school-assistant-dashboard",title:"Studybugs â Assistant Dashboard"},attendance:{componentName:"dashboard-page",title:"Studybugs â Attendance Dashboard"},aps:{componentName:"ap-manager",title:"Studybugs â AP Manager"},intervention:{componentName:"intervention-page",title:"Studybugs â Intervention"},registers:{componentName:"registers-page",title:"Studybugs â Registers"},sickmap:{componentName:"schools-bugs-map",title:"Studybugs â Bugs Map"},users:{componentName:"users-page",title:"Studybugs â Users"},addOns:{componentName:"add-ons-page",title:"Studybugs â Add-ons"},getstarted:{componentName:"get-started",title:"Studybugs â Get started"}});function t(t,o){e.load("schoolPortal",function(){return n.load(t,o)})}function o(e){var n=function(){var e=O.school(),n=aa(),t=e.sections.includes("getstarted"),o=e.getStartedFlowHasItems;if(t&&o&&!n)return"getstarted";if(e.addOns.dataCapture)return"dashboard/0";if(e.addOns.attendance){if(e.sections.includes("dashboard"))return"dashboard/0";if(e.sections.includes("attendance"))return"attendance"}var i=e.addOns.registers&&e.sections.includes("registers");if(i)return"registers";if(e.sections.includes("messages"))return"messages";var a=e.addOns.parentTime&&e.sections.includes("calendar");if(a)return"calendar";return"sickmap"}();M()(document).trigger("goto",[s.m.schoolPath(n),{onLoad:e}])}function i(e,n){s.m.school().sections.includes(e)?t(e,n):o(n)}function a(e,n,t){s.m.school().addOns[e]?i(n,t):o(t)}var r="^/school/[^/]+/assistant",c=new RegExp("".concat(r,"(/|\\?|$)"));(0,l.IC)({"^/school(/[^/]*(/)?)?$":function(e){o(null==e?void 0:e.onLoad)},"^/school/[^/]+/getstarted":function(e){i("getstarted",null==e?void 0:e.onLoad)},"^/school/[^/]+/messages":function(e){i("messages",null==e?void 0:e.onLoad)},"^/school/[^/]+/calendar":function(){a("parentTime","calendar")},"^/school/[^/]+/attendance":function(e){a("attendance","attendance",null==e?void 0:e.onLoad)},"^/school/[^/]+/dashboard(/?(\\?|$|#))":function(){window.location=location.href.replace(/dashboard/,"attendance")},"^/school/[^/]+/dashboard":function(e){var n;null!==(n=s.m.school())&&void 0!==n&&null!==(n=n.addOns)&&void 0!==n&&n.dataCapture?t("dashboard",null==e?void 0:e.onLoad):a("attendance","dashboard",null==e?void 0:e.onLoad)},"^/school/[^/]+/interventions":function(){window.location=location.href.replace(/interventions$/,"intervention")},"^/school/[^/]+/intervention":function(e){i("intervention",null==e?void 0:e.onLoad)},"^/school/[^/]+/registers":function(e){a("registers","registers",null==e?void 0:e.onLoad)},"^/school/[^/]+/aps":function(e){a("apManager","aps",null==e?void 0:e.onLoad)},"^/school/[^/]+/sickmap":function(e){t("sickmap",null==e?void 0:e.onLoad)},"^/school/[^/]+/users":function(e){i("users",null==e?void 0:e.onLoad)},"^/school/[^/]+/add-ons":function(e){O.isAlternativeProvision()?o(null==e?void 0:e.onLoad):t("addOns",
1null==e?void 0:e.onLoad)},"^/school/[^/]+/reminder":Hn.sendTakeUpReminder,"^/school/[^/]+/pt-invite":Hn.sendParentTimeInvitation,[r]:function(){(0,u.H)(),o()},"^/school/[^/]+/ap-onboarding":function(){ca(!0),o()},"^/school/[^/]+/inbox":function(){window.location=location.href.replace(/inbox$/,"messages")},"^/school/[^/]+/alerts":function(){window.location=location.href.replace(/alerts$/,"intervention")}}),on.init(function(e,n){return t(e,n)}),O.school.subscribe(function(e){var n=(0,l.Yn)(),t=n.replace(/^\/school\/[^/]+/,"/school/".concat(e.id)),o=c.test(t);n===t||o||M()(document).trigger("goto",[t])})}function Qc(e){if(e){var n,t=window.location.pathname.match(/^\/school\/([^/]+)\//),o=t?t[1]:0;if(o){var i=parseInt(o);n=c.Ay.find(e,function(e){return e.id===i})}O.school(n||e[0])}}function Zc(e){return el.apply(this,arguments)}function el(){return el=(0,o.A)(a().mark(function e(n){var t;return a().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return s.m.portal("school"),Xc(n),iM.init(),We(),t=new Promise(function(e){O.mySchools.subscribe(function(n){Qc(n),e()})}),sn(),e.next=1,t;case 1:return e.abrupt("return",e.sent);case 2:case"end":return e.stop()}},e)})),el.apply(this,arguments)}p().components.register("school-settings",{viewModel:function(e){return new Jc(e.school)},template:'\n {{#ifnot gettingSettings}}\n <div class="setting">\n <div class="title">Anti-Truancy Measures</div>\n <div class="settingBody">\n <input id="confirmAbsReps" type="checkbox" class="primary" data-bind="checked: confirmAbsReps">\n <label for="confirmAbsReps">Send parents a confirmation email after they report absence</label>\n <p>Enable this to guard against the unlikely event that a child or other unauthorised person\n gains access to a parentâs Studybugs account and uses it to report an absence falsely. If this happens,\n the parent will find out and can take appropriate action.</p>\n </div>\n </div>\n <div class="setting">\n <div class="title">Email Absence Reports</div>\n <div class="settingBody">\n <input id="emailMessages" type="checkbox" class="primary" data-bind="checked: emailMessages">\n <label for="emailMessages">Email all messages from parents to the school</label>\n <p>Enable this to have all absence and sick reports and other messages from parents sent to a school email\n address of your choice.\n <span data-bind="html: emailText"></span>To change this please\n contact us at <a href="mailto:{{s.c.supportEmail}}">{{s.c.supportEmail}}</a>.</p>\n </div>\n </div>\n <div class="setting ss">\n <div class="title">Studybugs Sync</div>\n <div class="settingBody">\n <sync-settings params="schoolId: school().id, syncStatus: syncStatus"></sync-settings>\n </div>\n </div>\n <div class="setting" data-bind="if: syncRestrictions().length">\n <div class="title">Data Restrictions</div>\n <div class="settingBody">\n <p>The following data processing restrictions are in place when extracting data from\n {{syncStatus().mis.name}}.</p>\n <ul>\n {{#foreach: syncRestrictions}}\n <li>{{$data}}</li>\n {{/foreach}}\n </ul>\n </div>\n </div>\n <div class="setting">\n <div class="title">Licence</div>\n <div class="settingBody">\n <p><a data-bind="click: showLicence">{{licenceLinkText}}</a></p>\n </div>\n </div>\n <div class="setting section" data-bind="if: school().attendanceEnabled">\n <div class="title">Attendance</div>\n </div>\n '.concat(Kc("school().attendanceEnabled"),'\n <div class="setting" data-bind="if: school().attendanceEnabled">\n <div class="title">Matching</div>\n <div class="settingBody">\n <input id="matchParentalRespOnly" type="checkbox" class="primary" data-bind="checked: matchParentalRespOnly">\n <label for="matchParentalRespOnly">Match only with contacts with parental responsibility</label>\n <p>When people report absence using Studybugs, we try to match the details theyâve provided with the pupil\n contact details you hold, so we can enter absence reports automatically. Tick this box if you\n want us to match automatically only with contacts who are marked as being a parent or a guardian\n of the pupil in question. This will not change any records that have already been matched.</p>\n </div>\n </div>\n <div class="setting section" data-bind="if: school().registersEnabled">\n <div class="title">Registers</div>\n </div>\n ').concat(Kc("school().registersEnabled"),'\n <div class="setting" data-bind="if: school().registersEnabled">\n <div class="title">Pupil Sort Order</div>\n <div class="settingBody">\n <sw-picker params="items: registersSortOrderOptions, selectedItem: defaultRegistersSortOrder">{{label}}</sw-picker>\n <p>Change the default order of pupils in Studybugs Registers.</p>\n <p><em>{{registersSortOrderOptions[2].label}}</em> is designed to enhance pupilsâ learning as they look for\n their names and faces each day and gives them a chance to appear first. Itâs also a bit of fun!</p>\n </div>\n </div>\n <div class="setting" data-bind="if: school().registersEnabled">\n <div class="title">Pupil Names</div>\n <div class="settingBody pupilNames">\n <sw-picker params="items: registersNameFormatOptions, selectedItem: defaultRegistersNameFormat">{{label}}</sw-picker>\n <p>Change how pupilsâ names are displayed by default in Studybugs Registers.</p>\n </div>\n </div>\n {{/ifnot}}\n')})},13034:function(e,n,t){t.d(n,{q:function(){return l}});t(44114),t(26099);var o=t(51786),i=t.n(o),a=t(74692),s=t.n(a),r=t(4523),M=t(87542),c=t(31719),l=100;i().bindingHandlers.collapsible={init:function(e,n,t,o,a){var d=[],u=s()(e),A=i().unwrap(n()),p=(0,M.oI)(A.open,!1),q=(0,M.oI)(A.animate,!1),m=u.children(".collapse-control"),f=u.children(".collapse-content"),h=s()('<button class="button button-icon expander">'.concat(c,"</button>"));m.attr("data-bind","click: toggle"),m.append(h),u.addClass("collapsible");var W=f.prop("id")||"collapse-content-"+r.Ay.uniqueId(),g=m.prop("id")||"collapse-control-"+r.Ay.uniqueId();function v(e,n){var t=(null==n||n)&&q();e?(u.addClass("open"),h.prop("ariaExpanded",!0),f.prop("ariaHidden",!1),t?f.slideDown(l):f.show()):(u.removeClass("open"),h.prop("ariaExpanded",!1),f.prop("ariaHidden",!0),t?f.slideUp(l):f.hide())}f.prop("id",W),m.prop("id",g),h.attr("aria-labelledby",g),f.attr({"aria-labelledby":g,role:"region"}),h.attr("aria-controls",W),v(p(),!1),d.push(p.subscribe(v)),i().utils.domNodeDisposal.addDisposeCallback(e,function(){d.forEach(function(e){return e.dispose()})});var b=a.extend({open:p,toggle:function(){p(!p())}});return i().applyBindingsToDescendants(b,e),{controlsDescendantBindings:!0}},update:function(){}}},16720:function(e,n,t){var o=t(51786),i=t.n(o),a=t(45204);
1i().components.register("copy-to-clipboard",{viewModel:function(){var e=i().observable();return{elementToCopy:e,clipboardSupported:a.x,copyToClipboard:function(){var n=e();n&&(0,a.l)(n)}}},template:"{{#template {nodes: $componentTemplateNodes}}}{{/template}}"})},37874:function(e,n,t){var o=t(64467),i=(t(62062),t(52675),t(2008),t(44114),t(18111),t(22489),t(7588),t(61701),t(83851),t(81278),t(79432),t(26099),t(23500),t(51786)),a=t.n(i),s=t(45725);function r(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,o)}return t}function M(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?r(Object(t),!0).forEach(function(n){(0,o.A)(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):r(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}a().components.register("social-media-links",{viewModel:function(e){var n=e.shareArticle,t=e.showLabels,o=e.useAccountNameAsLabel;return{platformLinks:s.o.map(function(e){return M(M({},e),{},{label:o?e.accountName:e.label,href:n?e.shareArticle(n):e.href})}),showLabels:t}},template:'\n {{#if !showLabels}}\n {{#foreach platformLinks}}<a target="_blank" data-bind="attr: { href: href }">{{{icon}}}</a>{{/foreach}}\n {{/if}}\n {{#if showLabels}}\n <ul>\n {{#foreach platformLinks}}\n <li><a target="_blank" class="button button-link" data-bind="attr: { href: href }">{{{icon}}}<span>{{label}}</span></a></li>\n {{/foreach}}\n </ul>\n {{/if}}\n '})},61168:function(e,n,t){var o=t(51786),i=t.n(o);i().components.register("video-player",{viewModel:function(e){var n=e.video,t=i().observable(),o=t.subscribe(function(t){!function(e,n){var t,o=null===(t=window)||void 0===t?void 0:t.ga;if(o&&e){var i=function(e){return o("send","event","video",e,n)};e.addEventListener("play",function(){i("play")}),e.addEventListener("ended",function(){i("ended")}),e.addEventListener("waiting",function(){i("waiting")})}}(t,n.logId),e.videoElement&&e.videoElement(t)});return{video:n,videoElement:t,dispose:function(){return o.dispose()}}},template:'\n <video controls poster="{{video.posterUri}}" data-bind="element: videoElement">\n <source src="{{video.sourceUri}}" type="video/mp4"/>\n <p>{{video.altText}}</p>\n </video>'})},64643:function(e,n,t){t.d(n,{C:function(){return A}});var o=t(23029),i=t(92901);t(16280),t(23792),t(26099),t(47764),t(73772),t(88454),t(29452),t(62953);function a(e,n,t){(function(e,n){if(n.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,n),n.set(e,t)}function s(e,n){return e.get(M(e,n))}function r(e,n,t){return e.set(M(e,n),t),t}function M(e,n,t){if("function"==typeof e?e===n:e.has(n))return arguments.length<3?n:t;throw new TypeError("Private element is not present on this object")}var c=new WeakMap,l=new WeakMap,d=new WeakMap,u=new WeakMap,A=function(){return(0,i.A)(function e(n,t,i,s){(0,o.A)(this,e),a(this,c,void 0),a(this,l,void 0),a(this,d,void 0),a(this,u,void 0),r(c,this,n),r(l,this,t),r(d,this,i),r(u,this,s)},[{key:"sourceUri",get:function(){return s(c,this)}},{key:"posterUri",get:function(){return s(l,this)}},{key:"altText",get:function(){return s(d,this)}},{key:"logId",get:function(){return s(u,this)}}])}()},92808:function(e){e.exports='<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zM9 6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9V6zm9 14H6V10h12v10zm-6-3c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"/></svg>'},2836:function(e){e.exports=JSON.parse('{"version":"2026c","zones":["Europe/Berlin|LMT CET CEST CEMT|-R.s -10 -20 -30|012121212121212321212321212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-36RcR.s UbWR.s 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 kL0 Nc0 m10 WM0 1ao0 1cp0 dX0 jz0 Dd0 1io0 17c0 1fA0 1a00 1ehA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|41e5","Europe/Istanbul|LMT IMT EET EEST +03 +04|-1T.Q -1U.U -20 -30 -30 -40|01232323232323232323232323232323232323232323232345423232323232323232323232323232323232323232323232323232323232323234|-3D8NT.Q 1ePXW.U dzzU.U 11b0 8tB0 1on0 1410 1db0 19B0 1in0 3Rd0 Un0 1oN0 11b0 zSN0 CL0 mp0 1Vz0 1gN0 8yn0 1yp0 ML0 1kp0 17b
10 1ip0 17b0 1fB0 19X0 1ip0 19X0 1ip0 17b0 qdB0 38L0 1jd0 Tz0 l6O0 11A0 WN0 1qL0 TB0 1tX0 U10 1tz0 11B0 1in0 17d0 z90 cne0 pb0 2Cp0 1800 14o0 1dc0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1a00 1fA0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WO0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 Xc0 1qo0 WM0 1qM0 11A0 1o00 1200 1nA0 11A0 1tA0 U00 15w0|13e6","Asia/Nicosia|LMT EET EEST|-2d.s -20 -30|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1Vc2d.s 2a3cd.s 1cL0 1qp0 Xz0 19B0 19X0 1fB0 1db0 1cp0 1cL0 1fB0 19X0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1o30 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|32e4","Europe/Brussels|LMT BMT WET CET CEST WEST|-h.u -h.u 0 -10 -20 -10|012343434325252525252525252525252525252525252525252525434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343|-3D8Mh.u u1Ah.u SO00 3zX0 11c0 1iO0 11A0 1o00 11A0 my0 Ic0 1qM0 Rc0 1EM0 UM0 1u00 10o0 1io0 1io0 17c0 1a00 1fA0 1cM0 1cM0 1io0 17c0 1fA0 1a00 1io0 1a30 1io0 17c0 1fA0 1a00 1io0 17c0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 y00 5Wn0 WM0 1fA0 1cM0 16M0 1iM0 16M0 1C00 Uo0 1eeo0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|21e5","Europe/Athens|LMT AMT EET EEST CEST CET|-1y.Q -1y.Q -20 -30 -20 -10|0123234545232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-30SNy.Q OMM1 CNbx.Q mn0 kU10 9b0 3Es0 Xa0 1fb0 1dd0 k3X0 Nz0 SCp0 1vc0 SO0 1cM0 1a00 1ao0 1fc0 1a10 1fG0 1cg0 1dX0 1bX0 1cQ0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 W
1M0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|35e5","Europe/Dublin|LMT DMT IST GMT BST IST|p.l p.l -y.D 0 -10 -10|012343434343435353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353|-3BHby.D 1ra20 Rc0 1fzy.D 14M0 1fc0 1g00 1co0 1dc0 1co0 1oo0 1400 1dc0 19A0 1io0 1io0 WM0 1o00 14o0 1o00 17c0 1io0 17c0 1fA0 1a00 1lc0 17c0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1cM0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1io0 1qM0 Dc0 g600 14o0 1wo0 17c0 1io0 11A0 1o00 17c0 1fA0 1a00 1fA0 1cM0 1fA0 1a00 17c0 1fA0 1a00 1io0 17c0 1lc0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1a00 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1tA0 IM0 90o0 U00 1tA0 U00 1tA0 U00 1tA0 U00 1tA0 WM0 1qM0 WM0 1qM0 WM0 1tA0 U00 1tA0 U00 1tA0 11z0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 14o0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|12e5
vendor: 39,897 bytes, line 1
1","Europe/Andorra|LMT WET CET CEST|-6.4 0 -10 -20|0123232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-2M0M6.4 1Pnc6.4 1xIN0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|79e3","Europe/Astrakhan|LMT +03 +04 +05|-3c.c -30 -40 -50|012323232323232323212121212121212121212121212121212121212121212|-1Pcrc.c eUMc.c 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 1cM0 3Co0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3rd0|10e5","Europe/London|LMT GMT BST BDST|1.f 0 -10 -20|01212121212121212121212121212121212121212121212121232323232321212321212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-4VgnW.J 2KHdW.J Rc0 1fA0 14M0 1fc0 1g00 1co0 1dc0 1co0 1oo0 1400 1dc0 19A0 1io0 1io0 WM0 1o00 14o0 1o00 17c0 1io0 17c0 1fA0 1a00 1lc0 17c0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1cM0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1io0 1qM0 Dc0 2Rz0 Dc0 1zc0 Oo0 1zc0 Rc0 1wo0 17c0 1iM0 FA0 xB0 1fA0 1a00 14o0 bb0 LA0 xB0 Rc0 1wo0 11A0 1o00 17c0 1fA0 1a00 1fA0 1cM0 1fA0 1a00 17c0 1fA0 1a00 1io0 17c0 1lc0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1a00 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1tA0 IM0 90o0 U00 1tA0 U00 1tA0 U00 1tA0 U00 1tA0 WM0 1qM0 WM0 1qM0 WM0 1tA0 U00 1tA0 U00 1tA0 11z0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 14o0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|10e6","Europe/Belgrade|LMT CET CEST|-1m -10 -20|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-3topm 2juLm 3IP0 WM0 1fA0 1cM0 1cM0 1rc0 Qo0 1vmo0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|12e5","Europe/Prague|LMT PMT CET CEST GMT|-V.I -V.I -10 -20 0|0123232323232323232423232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-4QbAV.I 1FDc0 XPaV.I 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 1cM0 1qM0 11c0 mp0 xA0 mn0 17c0 1io0 17c0 1fc0 1ao0 1bNc0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|13e5","Europe/Bucharest|LMT BMT EET EEST|-1I.o -1I.o -20 -30|01232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-3awpI.o 1AU00 20LI.o RA0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1Axc0 On0 1fA0 1a10 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cK0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cL0 1cN0 1cL0 1fB0 1nX0 11E0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|19e5","Europe/Budapest|LMT CET CEST|-1g.k -10 -20|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-3cK1g.k 124Lg.k 11d0 1iO0 11A0 1o00 11A0 1oo0 11c0 1lc0 17c0 O1V0 3Nf0 WM0 1fA0 1cM0 1cM0 1oJ0 1dd0 1020 1fX0 1cp0 1cM0 1cM0 1cM0 1fA0 1a00 bhy0 Rb0 1wr0 Rc0 1C00 LA0 1C00 LA0 SNW0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cO0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|17e5","Europe/Zurich|LMT BMT CET CEST|-y.8 -t.K -10 -20|0123232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-4HyMy.8 1Dw04.m 1SfAt.K 11A0 1o00 11A0 1xG10 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM
vendor: 10,794 bytes, line 1
10 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|38e4","Europe/Chisinau|LMT CMT BMT EET EEST CEST CET MSK MSD|-1T.k -1T -1I.o -20 -30 -20 -10 -30 -40|0123434343434343434345656578787878787878787878434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343|-3D8NT.k 1wNA0.k wGMa.A 20LI.o RA0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 27A0 2en0 39g0 WM0 1fA0 1cM0 V90 1t7z0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 gL0 WO0 1cM0 1cM0 1cK0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1nX0 11D0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WN0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|67e4","
vendor: 99,398 bytes, line 1
1Europe/Gibraltar|LMT GMT BST BDST CET CEST|l.o 0 -10 -20 -10 -20|0121212121212121212121212121212121212121212121212123232323232121232121212121212121212145454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-3BHbC.A 1ra1C.A Rc0 1fA0 14M0 1fc0 1g00 1co0 1dc0 1co0 1oo0 1400 1dc0 19A0 1io0 1io0 WM0 1o00 14o0 1o00 17c0 1io0 17c0 1fA0 1a00 1lc0 17c0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1cM0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1io0 1qM0 Dc0 2Rz0 Dc0 1zc0 Oo0 1zc0 Rc0 1wo0 17c0 1iM0 FA0 xB0 1fA0 1a00 14o0 bb0 LA0 xB0 Rc0 1wo0 11A0 1o00 17c0 1fA0 1a00 1fA0 1cM0 1fA0 1a00 17c0 1fA0 1a00 1io0 17c0 1lc0 17c0 1fA0 10Jz0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|30e3","Europe/Helsinki|LMT HMT EET EEST|-1D.N -1D.N -20 -30|01232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-3H0ND.N 1Iu00 OULD.N 1dA0 1xGq0 1cM0 1cM0 1cM0 1cN0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|12e5","Europe/Kaliningrad|LMT CET CEST EET EEST MSK MSD +03|-1m -10 -20 -20 -30 -30 -40 -30|012121212121212343565656565656565654343434343434343434343434343434343434343434373|-36Rdm UbXm 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 390 7A0 1en0 12N0 1pbb0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|44e4","Europe/Kiev|LMT KMT EET MSK CEST CET MSD EEST|-22.4 -22.4 -20 -30 -20 -10 -40 -30|01234545363636363636363636367272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272|-3D8O2.4 1LUM0 eUo2.4 rnz0 2Hg0 WM0 1fA0 da0 1v4m0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 Db0 3220 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o10 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|34e5","Europe/Kirov|LMT +03 +04 +05 MSD MSK MSK|-3i.M -30 -40 -50 -40 -30 -40|0123232323232323232454524545454545454545454545454545454545454565|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 2pz0 1cN0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|48e4","Europe/Lisbon|LMT WET WEST WEMT CET CEST|A.J 0 -10 -20 -10 -20|012121212121212121212121212121212121212121212321232123212321212121212121212121212121212121212121212124121212121212121212121212121212124545454212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2le00 aPX0 Sp0 M00 1vb0 SN0 1vb0 SN0 1vb0 Td0 1vb0 SN0 1vb0 6600 18o0 3I00 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 3I00 17c0 1cM0 1cM0 3Fc0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 1uo0 1c00 1dc0 1400 gL0 IM0 s10 U00 dX0 Rc0 pd0 Rc0 gL0 Oo0 pd0 Rc0 gL0 Oo0 pd0 14o0 1cM0 1cP0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 oiK0 1cM0 1cM0 1fB0 1cM0 1cM0 1cM0 1fA0 1a00 1cL0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cN0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|27e5","Europe/Madrid|LMT WET WEST WEMT CET CEST|e.I 0 -10 -20 -10 -20|0121212121212121212321454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-2M0M0 G5z0 19B0 1cL0 1dd0 b1z0 18p0 3HX0 17d0 1fz0 1a10 1io0 1a00 1in0 17d0 iIn0 Hd0 1cL0 bb0 1200 2s20 14n0 5aL0 Mp0 1vz0 17d0 1in0 17d0 1in0 17d0 1in0 17d0 6hX0 11B0 XHX0 1a10 1fz0 1a10 19X0 1cN0 1fz0 1a10 1fC0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|62e5","Europe/Malta|LMT CET CEST|-W.4 -10 -20|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-35rcW.4 SXzW.4 Lz0 1cN0 1db0 1410 1on0 Wp0 1qL0 17d0 1cL0 M3B0 5M20 WM0 1fA0 1co0 17c0 1iM0 16m0 1de0 1lc0 14m0 1lc0 WO0 1qM0 GTW0 On0 1C10 LA0 1C00 LA0 1EM0 LA0 1C00 LA0 1zc0 Oo0 1C00 Oo0 1co0 1cM0 1lA0 Xc0 1qq0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1iN0 19z0 1fB0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|42e4","Europe/Minsk|LMT MMT EET MSK CEST CET MSD EEST +03|-1O.g -1O -20 -30 -20 -10 -40 -30 -30|012345454363636363636363636372727272727272727272727272727272727272728|-3D8NO.g 1LUM0.g eUnO qNX0 3gQ0 WM0 1fA0 1cM0 Al0 1tsn0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 3Fc0 1cN0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0|19e5","Europe/Paris|LMT PMT WET WEST CEST CET WEMT|-9.l -9.l 0 -10 -20 -10 -20|01232323232323232323232323232323232323232323232323234545463654545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545|-3bQ09.l MDA0 cNb9.l HA0 19A0 1iM0 11c0 1oo0 Wo0 1rc0 QM0 1EM0 UM0 1u00 10o0 1io0 1wo0 Rc0 1a00 1fA0 1cM0 1cM0 1io0 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 1fA0 1a00 1io0 17c0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Df0 Ik0 5M30 WM0 1fA0 1cM0 Vx0 hB0 1aq0 16M0 1ekn0 1cL0 1fC0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|11e6","Europe/Moscow|LMT MMT MMT MST MDST MSD MSK +05 EET EEST MSK|-2u.h -2u.h -2v.j -3v.j -4v.j -40 -30 -50 -20 -30 -40|01232434565756865656565656565656565698656565656565656565656565656565656565656a6|-3D8Ou.h 1sQM0 2pyW.W 1bA0 11X0 GN0 1Hb0 c4v.j ik0 3DA0 dz0 15A0 c10 2q10 iM10 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cN0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|16e6","Europe/Riga|LMT RMT LST EET MSK CEST CET MSD EEST|-1A.y -1A.y -2A.y -20 -30 -20 -10 -40 -30|0121213456565647474747474747474838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383|-3D8NA.y 1xde0 11A0 1iM0 ko0 gWm0 yDXA.y 2bX0 3fE0 WM0 1fA0 1cM0 1cM0 4m0 1sLy0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cN0 1o00 11A0 1o00 11A0 1qM0 3oo0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|64e4","Europe/Rome|LMT RMT CET CEST|-N.U -N.U -10 -20|012323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-4aU0N.U 15snN.U T000 Lz0 1cN0 1db0 1410 1on0 Wp0 1qL0 17d0 1cL0 M3B0 5M20 WM0 1fA0 1cM0 16M0 1iM0 16m0 1de0 1lc0 14m0 1lc0 WO0 1qM0 GTW0 On0 1C10 LA0 1C00 LA0 1EM0 LA0 1C00 LA0 1zc0 Oo0 1C00 Oo0 1C00 LA0 1zc0 Oo0 1C00 LA0 1C00 LA0 1zc0 Oo0 1C00 Oo0 1zc0 Oo0 1fC0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|39e5","Europe/Samara|LMT +03 +04 +05|-3k.k -30 -40 -50|0123232323232323232121232323232323232323232323232323232323212|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 2y10 14m0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 2sp0 WM0|12e5","Europe/Saratov|LMT +03 +04 +05|-34.i -30 -40 -50|012323232323232321212121212121212121212121212121212121212121212|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1cM0 1cM0 1fA0 1cM0 3Co0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 5810|","Europe/Simferopol|LMT SMT EET MSK CEST CET MSD EEST MSK|-2g.o -2g -20 -30 -20 -10 -40 -30 -40|0123454543636363636363636363272727636363727272727272727272727272727272727283|-3D8Og.o 1LUM0.o eUog rEn0 2qs0 WM0 1fA0 1cM0 3V0 1u0L0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1Q00 4eN0 1cM0 1cM0 1cM0 1cM0 dV0 WO0 1cM0 1cM0 1fy0 1o30 11B0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11z0 1nW0|33e4","Europe/Sofia|LMT IMT EET CET CEST EEST|-1x.g -1U.U -20 -10 -20 -30|0123434325252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252|-3D8Nx.g AiLA.k 1UFeU.U WM0 1fA0 1cM0 1cM0 1cN0 1mKH0 1dd0 1fb0 1ap0 1fb0 1a20 1fy0 1a30 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cK0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1nX0 11E0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|12e5","Europe/Tallinn|LMT TMT CET CEST EET MSK MSD EEST|-1D -1D -10 -20 -20 -30 -40 -30|0123214532323565656565656565657474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474|-3D8ND 1wI00 teD 11A0 1Ta0 4rXl KSLD 2FX0 2Jg0 WM0 1fA0 1cM0 18J0 1sTX0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o10 11A0 1qM0 5QM0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|41e4","Europe/Tirane|LMT CET CEST|-1j.k -10 -20|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2glBj.k 14pcj.k 5LC0 WM0 4M0 1fCK0 10n0 1op0 11z0 1pd0 11z0 1qN0 WL0 1qp0 Xb0 1qp0 Xb0 1qp0 11z0 1lB0 11z0 1qN0 11z0 1iN0 16n0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|42e4","Europe/Ulyanovsk|LMT +03 +04 +05 +02|-3d.A -30 -40 -50 -20|01232323232323232321214121212121212121212121212121212121212121212|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3rd0|13e5","Europe/Vienna|LMT CET CEST|-15.l -10 -20|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-36Rd5.l UbX5.l 11d0 1iO0 11A0 1o00 11A0 3KM0 14o0 LA00 6i00 WM0 1fA0 1cM0 1cM0 1cM0 400 2qM0 1ao0 1co0 1cM0 1io0 17c0 1gHa0 19X0 1cP0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|18e5","Europe/Vilnius|LMT WMT KMT CET EET MSK CEST MSD EEST|-1F.g -1o -1z.A -10 -20 -30 -20 -40 -30|0123435636365757575757575757584848484848484848463648484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484|-3D8NF.g 1u5Ah.g 6ILM.o 1Ooz.A zz0 Mfd0 29W0 3is0 WM0 1fA0 1cM0 LV0 1tgL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11B0 1o00 11A0 1qM0 8io0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|54e4","Europe/Volgograd|LMT +03 +04 +05 MSD MSK MSK|-2V.E -30 -40 -50 -40 -30 -40|012323232323232324545452454545454545454545454545454545454545456525|-21IqV.E psLV.E 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1cM0 1cM0 1fA0 1cM0 2pz0 1cN0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 9Jd0 5gn0|10e5","Europe/Warsaw|LMT WMT CET CEST EET EEST|-1o -1o -10 -20 -20 -30|0123232345423232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-3D8No 1qDA0 1LXo 11d0 1iO0 11A0 1o00 11A0 1on0 11A0 6zy0 HWP0 5IM0 WM0 1fA0 1cM0 1dz0 1mL0 1en0 15B0 1aq0 1nA0 11A0 1io0 17c0 1fA0 1a00 iDX0 LA0 1cM0 1cM0 1C00 Oo0 1cM0 1cM0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1C00 LA0 uso0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|17e5"
1],"links":["Asia/Nicosia|Europe/Nicosia","Europe/Belgrade|Europe/Ljubljana","Europe/Belgrade|Europe/Podgorica","Europe/Belgrade|Europe/Sarajevo","Europe/Belgrade|Europe/Skopje","Europe/Belgrade|Europe/Zagreb","Europe/Berlin|Europe/Copenhagen","Europe/Berlin|Europe/Oslo","Europe/Berlin|Europe/Stockholm","Europe/Brussels|Europe/Amsterdam","Europe/Brussels|Europe/Luxembourg","Europe/Chisinau|Europe/Tiraspol","Europe/Helsinki|Europe/Mariehamn","Europe/Kiev|Europe/Kyiv","Europe/Kiev|Europe/Uzhgorod","Europe/Kiev|Europe/Zaporozhye","Europe/London|Europe/Belfast","Europe/London|Europe/Guernsey","Europe/London|Europe/Isle_of_Man","Europe/London|Europe/Jersey","Europe/Paris|Europe/Monaco","Europe/Prague|Europe/Bratislava","Europe/Rome|Europe/San_Marino","Europe/Rome|Europe/Vatican","Europe/Zurich|Europe/Busingen","Europe/Zurich|Europe/Vaduz"],"countries":["AD|Europe/Andorra","AL|Europe/Tirane","AT|Europe/Vienna","AX|Europe/Helsinki Europe/Mariehamn","BA|Europe/Belgrade Europe/Sarajevo","BE|Europe/Brussels","BG|Europe/Sofia","BY|Europe/Minsk","CH|Europe/Zurich","CY|Asia/Nicosia","CZ|Europe/Prague","DE|Europe/Zurich Europe/Berlin Europe/Busingen","DK|Europe/Berlin Europe/Copenhagen","EE|Europe/Tallinn","ES|Europe/Madrid","FI|Europe/Helsinki","FR|Europe/Paris","GB|Europe/London","GG|Europe/London Europe/Guernsey","GI|Europe/Gibraltar","GR|Europe/Athens","HR|Europe/Belgrade Europe/Zagreb","HU|Europe/Budapest","IE|Europe/Dublin","IM|Europe/London Europe/Isle_of_Man","IT|Europe/Rome","JE|Europe/London Europe/Jersey","LI|Europe/Zurich Europe/Vaduz","LT|Europe/Vilnius","LU|Europe/Brussels Europe/Luxembourg","LV|Europe/Riga","MC|Europe/Paris Europe/Monaco","MD|Europe/Chisinau","ME|Europe/Belgrade Europe/Podgorica","MK|Europe/Belgrade Europe/Skopje","MT|Europe/Malta","NL|Europe/Brussels Europe/Amsterdam","NO|Europe/Berlin Europe/Oslo","PL|Europe/Warsaw","PT|Europe/Lisbon","RO|Europe/Bucharest","RS|Europe/Belgrade","RU|Europe/Kaliningrad Europe/Moscow Europe/Simferopol Europe/Kirov Europe/Volgograd Europe/Astrakhan Europe/Saratov Europe/Ulyanovsk Europe/Samara","SE|Europe/Berlin Europe/Stockholm","SI|Europe/Belgrade Europe/Ljubljana","SJ|Europe/Berlin","SK|Europe/Prague Europe/Bratislava","SM|Europe/Rome Europe/San_Marino","TR|Europe/Istanbul","UA|Europe/Simferopol Europe/Kyiv","VA|Europe/Rome Europe/Vatican"]}')}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.