1var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.ASSUME_ES5=!1;$jscomp.ASSUME_ES6=!1;$jscomp.ASSUME_ES2020=!1;$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.ISOLATE_POLYFILLS=!1;$jscomp.FORCE_POLYFILL_PROMISE=!1;$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION=!1;$jscomp.INSTRUMENT_ASYNC_CONTEXT=!0; 2$jscomp.defineProperty=$jscomp.ASSUME_ES5||typeof Object.defineProperties=="function"?Object.defineProperty:function(a,b,c){if(a==Array.prototype||a==Object.prototype)return a;a[b]=c.value;return a};$jscomp.getGlobal=function(a){a=["object"==typeof globalThis&&globalThis,a,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var b=0;b<a.length;++b){var c=a[b];if(c&&c.Math==Math)return c}throw Error("Cannot find global object");}; 3$jscomp.global=$jscomp.ASSUME_ES2020?globalThis:$jscomp.getGlobal(this);$jscomp.IS_SYMBOL_NATIVE=typeof Symbol==="function"&&typeof Symbol("x")==="symbol";$jscomp.TRUST_ES6_POLYFILLS=!$jscomp.ISOLATE_POLYFILLS||$jscomp.IS_SYMBOL_NATIVE;$jscomp.polyfills={};$jscomp.propertyToPolyfillSymbol={};$jscomp.POLYFILL_PREFIX="$jscp$";var $jscomp$lookupPolyfilledValue=function(a,b,c){if(!c||a!=null){c=$jscomp.propertyToPolyfillSymbol[b];if(c==null)return a[b];c=a[c];return c!==void 0?c:a[b]}}; 4$jscomp.TYPED_ARRAY_CLASSES=function(){var a="Int8 Uint8 Uint8Clamped Int16 Uint16 Int32 Uint32 Float32 Float64".split(" ");$jscomp.global.BigInt64Array&&(a.push("BigInt64"),a.push("BigUint64"));return a}();$jscomp.polyfillTypedArrayMethod=function(a,b,c,d){if(b)for(var e=0;e<$jscomp.TYPED_ARRAY_CLASSES.length;e++){var h=$jscomp.TYPED_ARRAY_CLASSES[e]+"Array.prototype."+a;$jscomp.ISOLATE_POLYFILLS?$jscomp.polyfillIsolated(h,b,c,d):$jscomp.polyfillUnisolated(h,b,c,d)}}; 5$jscomp.polyfill=function(a,b,c,d){b&&($jscomp.ISOLATE_POLYFILLS?$jscomp.polyfillIsolated(a,b,c,d):$jscomp.polyfillUnisolated(a,b,c,d))};$jscomp.polyfillUnisolated=function(a,b,c,d){c=$jscomp.global;a=a.split(".");for(d=0;d<a.length-1;d++){var e=a[d];if(!(e in c))return;c=c[e]}a=a[a.length-1];d=c[a];b=b(d);b!=d&&b!=null&&$jscomp.defineProperty(c,a,{configurable:!0,writable:!0,value:b})}; 6$jscomp.polyfillIsolated=function(a,b,c,d){var e=a.split(".");a=e.length===1;d=e[0];d=!a&&d in $jscomp.polyfills?$jscomp.polyfills:$jscomp.global;for(var h=0;h<e.length-1;h++){var f=e[h];if(!(f in d))return;d=d[f]}e=e[e.length-1];c=$jscomp.IS_SYMBOL_NATIVE&&c==="es6"?d[e]:null;b=b(c);b!=null&&(a?$jscomp.defineProperty($jscomp.polyfills,e,{configurable:!0,writable:!0,value:b}):b!==c&&($jscomp.propertyToPolyfillSymbol[e]===void 0&&(c=Math.random()*1E9>>>0,$jscomp.propertyToPolyfillSymbol[e]=$jscomp.IS_SYMBOL_NATIVE? 7$jscomp.global.Symbol(e):$jscomp.POLYFILL_PREFIX+c+"$"+e),$jscomp.defineProperty(d,$jscomp.propertyToPolyfillSymbol[e],{configurable:!0,writable:!0,value:b})))};$jscomp.atMethod=function(a){a=Math.trunc(a)||0;a<0&&(a+=this.length);if(!(a<0||a>=this.length))return this[a]};$jscomp.polyfill("Array.prototype.at",function(a){return a?a:$jscomp.atMethod},"es_next","es5");$jscomp.typedArrayAt=function(a){return a?a:$jscomp.atMethod};$jscomp.polyfillTypedArrayMethod("at",$jscomp.typedArrayAt,"es_next","es5"); 8$jscomp.polyfill("String.prototype.at",function(a){return a?a:$jscomp.atMethod},"es_next","es5");window.metoffice=window.metoffice||{};window.googletag=window.googletag||{cmd:[]};window.Criteo=window.Criteo||{};window.Criteo.events=window.Criteo.events||[];window.metoffice.advertisingTargeting=window.metoffice.advertisingTargeting||{}; 9window.metoffice.advertising={originalScreenWidth:null,requiredSlots:{},sizeMappings:{bottom:[{viewport:[1360,240],slot:[[728,90],[970,90],[970,250]]},{viewport:[1280,240],slot:[[728,90],[970,90]]},{viewport:[960,240],slot:[[728,90]]},{viewport:[728,240],slot:[[320,50],[728,90]]},{viewport:[320,240],slot:[[320,50]]},{viewport:[1,1],slot:[]}],bottomWarnings:[{viewport:[1360,240],slot:[[728,90],[970,90],[970,250]]},{viewport:[1280,240],slot:[[728,90],[970,90]]},{viewport:[1,1],slot:[]}],top:[{viewport:[970, 10240],slot:[[970,90],[728,90]]},{viewport:[728,240],slot:[[728,90]]},{viewport:[320,240],slot:[[320,50]]}],sticky:[{viewport:[1976,240],slot:[[300,600],[160,600],[120,600]]},{viewport:[1696,240],slot:[[160,600],[120,600]]},{viewport:[1616,240],slot:[[120,600]]},{viewport:[1,1],slot:[]}],forecastTop:[{viewport:[1976,240],slot:[[728,90],[970,90]]},{viewport:[1360,240],slot:[[728,90],[970,90]]},{viewport:[1280,240],slot:[[728,90],[970,90]]},{viewport:[960,240],slot:[[728,90]]},{viewport:[728,240],slot:[[728, 1190]]},{viewport:[1,1],slot:[]}],mpu:[{viewport:[728,240],slot:[[300,250],[300,600]]},{viewport:[320,240],slot:[[300,250]]},{viewport:[1,1],slot:[]}],mpuOnly:[{viewport:[1280,240],slot:[[300,250]]},{viewport:[1,1],slot:[]}],mobile:[{viewport:[720,240],slot:[]},{viewport:[320,240],slot:[[320,50]]}]}
11,slotConfigurations:{"ad-super-leader":{sizes:[[970,90],[728,90],[320,50]],pos:"top",sizeMapping:"forecastTop"},"ad-bottom":{sizes:[[970,250],[970,90],[728,90],[320,50]],pos:"btm",sizeMapping:"bottom"},"ad-bottom-warnings":{sizes:[[970, 12250],[970,90],[728,90]],pos:"btm",sizeMapping:"bottomWarnings"},"ad-wraparound":{sizes:[[1,1]]},mobileAd:{sizes:[[320,50]],sizeMapping:"mobile"},mpu:{sizes:[[300,600],[300,250]],pos:"btm",sizeMapping:"mpu"},mpuOnly:{sizes:[[300,250]],pos:"btm",sizeMapping:"mpuOnly"},"sticky-double-mpu":{sizes:[[300,600]],pos:"top"},skyscraper:{sizes:[[160,600]]},skyLeft:{sizes:[[300,600],[160,600],[120,600]],pos:"stickyleft",sizeMapping:"sticky",config:{collapseDiv:"DISABLED"}},skyRight:{sizes:[[300,600],[160,600], 13[120,600]],pos:"stickyright",sizeMapping:"sticky",config:{collapseDiv:"DISABLED"}},forecastLeader:{sizes:[[970,90],[728,90]],pos:"forecastTop",sizeMapping:"forecastTop"}},criteoAdSlots:{"970x250":{size:[970,250],zoneId:1709559},"970x90":{size:[970,90],zoneId:1709558},"320x50":{size:[320,50],zoneId:1709557},"300x600":{size:[300,600],zoneId:1709556},"120x600":{size:[120,600],zoneId:1709555},"160x600":{size:[160,600],zoneId:1709554},"728x90":{size:[728,90],zoneId:1709553},"300x250":{size:[300,250],zoneId:1709552}}}; 14window.addEventListener("DOMContentLoaded",()=>{window.metoffice.advertising.originalScreenWidth=window.innerWidth});window.addEventListener("DOMContentLoaded",()=>{const a=new IntersectionObserver((b,c)=>{b.forEach(d=>{d.isIntersecting&&(d.target.classList.remove("lazybg"),c.unobserve(d.target))})});document.querySelectorAll(".lazybg").forEach(b=>a.observe(b))});window.metoffice=window.metoffice||{}; 15window.metoffice.storage={getItem(a){var b=this.getCookies()[a];return b&&(b=window.atob(b),JSON.parse(b))?b:window.localStorage.getItem(a)},getBase64Item(a){try{return JSON.parse(window.atob(document.cookie.split("; ").filter(b=>b.includes(a))[0].split("\x3d")[1]))}catch(b){return null}},getCookies(){return document.cookie.split("; ").reduce((a,b)=>{const [c,d]=b.split("\x3d");a[c]=d;return a},{})},setItem(a,b){this.setCookie(a,b,365)},setCookie(a,b,c){const d=window.metoffice.forecasts.config.topLevelDomain; 16b=window.btoa(JSON.stringify(b));const e=new Date;e.setTime(e.getTime()+c*24*60*60*1E3);c=`expires=${e.toUTCString()}`;window.document.cookie=`${a}=${b}; ${c}; ${`domain=.${d}`}; path=/;`}}; 17window.metoffice.hash={getParamMapFromHash:()=>{var a=window.location.hash;a=a.startsWith("#?")?a.substring(2).split("\x26"):[];return new Map(a.map(b=>{b=b.split("\x3d");return[b[0],b[1]]}))},getHashParameter:a=>window.metoffice.hash.getParamMapFromHash().get(a),setHashFromMap:(a,b=!0)=>{a=Array.from(a.entries()).map(c=>c.join("\x3d")).join("\x26");window.history.replaceState(null,null,`#?${a}`);b&&window.dispatchEvent(new Event("hashchange"))},replaceHashParameter:(a,b,c=!0)=>{const d=window.metoffice.hash.getParamMapFromHash(); 18d.set(a,b);window.metoffice.hash.setHashFromMap(d,c)},deleteHashParameter:(a,b=!0)=>{const c=window.metoffice.hash.getParamMapFromHash();c.delete(a);window.metoffice.hash.setHashFromMap(c,b)}};"use strict"; 19const bodyScrollLock={disableBodyScroll:()=>{document.body.classList.add("has-dialog")},enableBodyScroll:()=>{document.body.classList.remove("has-dialog")}},aria={KeyCode:{ESC:27},Utils:{IgnoreUtilFocusChanges:!1,isFocusable(a){if(a.tabIndex>0||a.tabIndex===0&&a.getAttribute("tabIndex")!==null)return!0;if(a.disabled)return!1;switch(a.nodeName){case "A":return!!a.href;case "INPUT":return a.type!=="hidden"&&a.type!=="file";case "BUTTON":case "SELECT":case "TEXTAREA":return!0;default:return!1}},remove(a){a?.remove()}, 20focusFirstDescendant(a){for(const b of a.childNodes)if(aria.Utils.attemptFocus(b)||aria.Utils.focusFirstDescendant(b))return!0;return!1},focusLastDescendant(a){for(let b=a.childNodes.length-1;b>=0;b--){const c=a.childNodes[b];if(aria.Utils.attemptFocus(c)||aria.Utils.focusLastDescendant(c))return!0}return!1},attemptFocus(a){if(!aria.Utils.isFocusable(a))return!1;aria.Utils.IgnoreUtilFocusChanges=!0;try{a.focus()}catch{}aria.Utils.IgnoreUtilFocusChanges=!1;return document.activeElement===a}},OpenDialogList:[], 21getCurrentDialog:()=>{if(aria.OpenDialogList?.length)return aria.OpenDialogList.at(-1)},closeCurrentDialog:()=>{const a=aria.getCurrentDialog();if(!a)return!1;a.close();return!0},handleEscape:a=>{(a.which||a.keyCode)===aria.KeyCode.ESC&&aria.closeCurrentDialog()&&a.stopPropagation()}};document.addEventListener("keyup",aria.handleEscape); 22aria.Dialog=function(a,b,c){this.dialogNode=document.getElementById(a);if(this.dialogNode===null)throw Error(`No element found with id="${a}".`);const d=new Set(["dialog","alertdialog"]);if(!(this.dialogNode.getAttribute("role")||"").trim().split(/\s+/g).some(e=>d.has(e)))throw Error("Dialog() requires a DOM element with ARIA role of dialog or alertdialog.");this.dialogNode.parentNode.classList.contains("dialog-backdrop")?this.backdropNode=this.dialogNode.parentNode:(this.backdropNode=document.createElement("div"), 23this.backdropNode.className="dialog-backdrop",this.dialogNode.parentNode.insertBefore(this.backdropNode,this.dialogNode),this.backdropNode.appendChild(this.dialogNode));this.backdropNode.classList.add("active");bodyScrollLock.disableBodyScroll(this.backdropNode);if(typeof b==="string")this.focusAfterClosed=document.getElementById(b);else if(typeof b==="object")this.focusAfterClosed=b;else throw new TypeError("the focusAfterClosed parameter is required for the aria.Dialog constructor.");this.focusFirst=
24typeof c==="string"?document.getElementById(c):typeof c==="object"?c:null;a=document.createElement("div");this.preNode=this.dialogNode.parentNode.insertBefore(a,this.dialogNode);this.preNode.tabIndex=0;a=document.createElement("div");this.postNode=this.dialogNode.parentNode.insertBefore(a,this.dialogNode.nextSibling);this.postNode.tabIndex=0;aria.OpenDialogList.length>0&&aria.getCurrentDialog().removeListeners();this.addListeners();aria.OpenDialogList.push(this);this.dialogNode.className="default_dialog"; 25this.focusFirst?this.focusFirst.focus():aria.Utils.focusFirstDescendant(this.dialogNode);this.lastFocus=document.activeElement};aria.Dialog.prototype.clearDialog=function(){for(const a of this.dialogNode.querySelectorAll("input"))a.value=""}; 26aria.Dialog.prototype.close=function(){aria.OpenDialogList.pop();this.removeListeners();this.preNode.remove();this.postNode.remove();this.dialogNode.className="hidden";this.backdropNode.classList.remove("active");this.focusAfterClosed.focus();aria.OpenDialogList.length>0?aria.getCurrentDialog().addListeners():bodyScrollLock.enableBodyScroll(this.backdropNode)}; 27aria.Dialog.prototype.replace=function(a,b,c){aria.OpenDialogList.pop();this.removeListeners();this.preNode.remove();this.postNode.remove();this.dialogNode.className="hidden";this.backdropNode.classList.remove("active");new aria.Dialog(a,b||this.focusAfterClosed,c)};aria.Dialog.prototype.addListeners=function(){document.addEventListener("focus",this.trapFocus,!0)};aria.Dialog.prototype.removeListeners=function(){document.removeEventListener("focus",this.trapFocus,!0)}; 28aria.Dialog.prototype.trapFocus=function(a){if(!aria.Utils.IgnoreUtilFocusChanges){var b=aria.getCurrentDialog();b.dialogNode.contains(a.target)?b.lastFocus=a.target:(aria.Utils.focusFirstDescendant(b.dialogNode),b.lastFocus===document.activeElement&&aria.Utils.focusLastDescendant(b.dialogNode),b.lastFocus=document.activeElement)}};globalThis.openDialog=(a,b,c)=>{new aria.Dialog(a,b,c)};globalThis.closeDialog=a=>{const b=aria.getCurrentDialog();b.dialogNode.contains(a)&&b.close()}; 29globalThis.replaceDialog=(a,b,c)=>{const d=aria.getCurrentDialog();d.dialogNode.contains(document.activeElement)&&d.replace(a,b,c)};globalThis.metoffice=globalThis.metoffice||{}; 30globalThis.metoffice.infoModal={currentScrollX:0,currentScrollY:0,init(a){a.currentTarget.removeEventListener(a.type,globalThis.metoffice.infoModal.init);a=document.getElementsByClassName("info-modal-anchor");if(a.length!==0)for(const b of a){a=b.hash.substring(1);const c=document.getElementById(a);if(c!=null&&!c.dataset.initalized){c.dataset.initalized="";c.classList.add("hidden");c.setAttribute("role","dialog");const d=document.createElement("span");d.classList.add("icon");d.dataset.type="global"; 31d.dataset.value="close";const e=document.createElement("button");e.classList.add("close-button");e.addEventListener("click",globalThis.metoffice.infoModal.closeModal);e.appendChild(d);e.id=`${a}CloseButton`;c.appendChild(e);globalThis.metoffice.infoModal.observer.observe(c,{attributeOldValue:!0,attributes:!0,childList:!1,subtree:!1})}b.onclick=globalThis.metoffice.infoModal.openModal}},closeModal(){globalThis.closeDialog(this)},openModal(a){const b=a.currentTarget.hash.substring(1);globalThis.metoffice.infoModal.currentScrollY= 32globalThis.pageYOffset;globalThis.metoffice.infoModal.currentScrollX=globalThis.pageXOffset;globalThis.openDialog(b,a.currentTarget,`${b}CloseButton`);return!1},observer:new MutationObserver(a=>{for(const b of a)b.type==="attributes"&&b.oldValue==="default_dialog"&&b.target.className==="hidden"&&globalThis.scroll(globalThis.metoffice.infoModal.currentScrollX,globalThis.metoffice.infoModal.currentScrollY)})};globalThis.addEventListener("DOMContentLoaded",globalThis.metoffice.infoModal.init);"use strict"; 33const menuTabClicked=a=>{const b=a.target,c=document.querySelector(".menu-tab-panel"),d=document.querySelector(`#${a.target.getAttribute("aria-controls")}`);if(!d.classList.contains("hidden"))return d.classList.add("hidden"),c.classList.add("hidden"),b.classList.remove("opened"),!1;if(d.querySelectorAll("ul \x3e *").length===0)return!0;c.classList.remove("hidden");
33document.querySelectorAll(".menu-tab-panel \x3e * ").forEach(e=>{e.classList.add("hidden")});d.classList.remove("hidden");document.querySelectorAll(".lower-menu-items li a.opened").forEach(e=> 34{e.classList.remove("opened")});b.classList.add("opened");window.dataLayer.push({event:"navExpand",navMenuItem:a.target.innerText});return!1};document.querySelectorAll(".menu-panel ul li a").forEach(a=>{a.addEventListener("click",b=>{window.dataLayer.push({event:"superNavClick",superNavMenuItem:b.target.innerText})})});document.querySelectorAll(".menu-tab").forEach(a=>{a.onclick=menuTabClicked}); 35document.addEventListener("click",a=>{a.target.closest(".lower-menu, .menu-tab-panel")==null&&(document.querySelectorAll(".lower-menu-items li a.opened").forEach(b=>{b.classList.remove("opened")}),document.querySelectorAll(".menu-tab-panel, .menu-tab-panel \x3e *").forEach(b=>{b.classList.add("hidden")}))}); 36const openSearch=()=>{document.querySelectorAll(".lower-container, .lower-menu-container-large").forEach(a=>{a.setAttribute("data-search","true")});document.querySelector(".nav-control").classList.add("hidden");document.querySelector(".lower-menu-container-large #site-search-input-large-screen").focus()},searchButton=document.querySelector(".nav-search");searchButton.onclick=openSearch;searchButton.addEventListener("keydown",a=>{a.key==="Enter"&&(a.preventDefault(),openSearch())}); 37const searchInputs=document.querySelectorAll(".site-search-input");searchInputs.forEach(a=>{a.addEventListener("blur",()=>{const b=a.value;searchInputs.forEach(c=>{c.value=b})})});const closeSearch=()=>{document.querySelectorAll(".lower-container, .lower-menu-container-large").forEach(a=>{a.setAttribute("data-search","false")});document.querySelector(".nav-control").classList.remove("hidden")},closeSearchButton=document.querySelector(".lower-menu-container-large #close-search-button"); 38closeSearchButton.onclick=closeSearch;closeSearchButton.addEventListener("keydown",a=>{a.key==="Enter"&&(a.preventDefault(),closeSearch(),document.querySelector("#search-button").focus())});const openMenu=()=>{const a=document.querySelector(".lower");a.classList.contains("full-screen")?(a.classList.remove("full-screen"),document.body.style.overflow=""):(a.classList.add("full-screen"),document.body.style.overflow="hidden")}; 39document.querySelectorAll(".menu-button").forEach(a=>{a.onclick=()=>{openMenu()};a.addEventListener("keydown",b=>{if(b.key==="Enter"||b.key===" ")b.preventDefault(),openMenu(),document.querySelector("#close-menu-button").focus()})});const menuHeaders=document.querySelectorAll(".menu-container-full-screen .menu-header"); 40menuHeaders.forEach(a=>{a.parentElement.querySelectorAll("ul").length>=1&&(a.getElementsByClassName("menu-link-arrow")[0].style.display="block",a.onclick=b=>{b.preventDefault();b=a.parentElement;const c=b.classList.contains("selected");document.querySelectorAll(".menu-container-full-screen").forEach(d=>{d.classList.remove("selected")});c||b.classList.add("selected")})});const backButton=document.querySelector(".third-level-back"); 41backButton.addEventListener("keydown",a=>{a.key==="Enter"||a.key===" "?backButton.click():a.key!=="Tab"||a.shiftKey||(a.preventDefault(),document.querySelector(".menu-container-full-screen.selected li.open .third-level li:first-child a").focus())});document.querySelectorAll(".menu-container-full-screen li .third-level li:last-child a").forEach(a=>{a.addEventListener("keydown",b=>{b.key!=="Tab"||b.shiftKey||(b.preventDefault(),document.querySelector("#close-menu-button").focus())})}); 42document.querySelectorAll(".menu-container-full-screen li .third-level li:first-child a").forEach(a=>{a.addEventListener("keydown",b=>{b.key==="Tab"&&b.shiftKey&&(b.preventDefault(),document.querySelector("#third-level-back").focus())})}); 43document.querySelector("#close-menu-button").addEventListener("keydown",a=>{a.key==="Tab"&&a.shiftKey?(a.preventDefault(),a=document.querySelector(".third-level-back.open")!==null,document.querySelector(a?".menu-container-full-screen li.open .third-level li:last-child a":".google-play").focus()):a.key==="Enter"&&document.querySelector("#menu-button").focus()}); 44document.querySelector("#close-menu-button").addEventListener("click",()=>{document.querySelectorAll(".menu-container-full-screen li.open").forEach(a=>a.classList.remove("open"))});document.querySelector(".google-play").addEventListener("keydown",a=>{a.key!=="Tab"||a.shiftKey||(a.preventDefault(),document.querySelector("#close-menu-button").focus())});const closeAllThirdLevel=()=>{document.querySelectorAll(".menu-container-full-screen ul li.open").forEach(a=>{a.classList.remove("open");backButton.classList.remove("open")})}; 45document.querySelectorAll(".menu-container-full-screen ul li").forEach(a=>{a.onclick=b=>{b.target.closest(".third-level")===null&&a.querySelector(".third-level")!==null&&(b.preventDefault(),closeAllThirdLevel(),backButton.classList.add("open"),a.classList.add("open"))}}); 46document.querySelectorAll("a.skip-link").forEach(a=>{a.addEventListener("click",b=>{b.preventDefault();b=window.metoffice.hash.getParamMapFromHash();window.location.hash=a.getAttribute("href");b&&window.metoffice.hash.setHashFromMap(b,!1)})});backButton.onclick=closeAllThirdLevel;"use strict";globalThis.metoffice=globalThis.metoffice||{}; 47globalThis.metoffice.createScrollableTable=function(a){const b=document.getElementById(a.contentId);var c={},d=null,e=null;const h={get content(){return b},get dayOffsets(){return c},get nextActiveDayTable(){return e},set nextActiveDayTable(f){e=f},tableFocused:function(f){e&&(e!==f.target&&e.focus(),e=null)},showHideScrollButtons:function(){const f=document.getElementById("btnScrollLeft"),g=document.getElementById("btnScrollRight");b&&f&&g&&(f.classList.toggle("hidden",b.scrollLeft===0),g.classList.toggle("hidden", 48Math.round(b.scrollLeft+b.clientWidth)>=b.scrollWidth))},addScrollButtonEvents:function(){let f=null,g=!1;const k=()=>{document.querySelectorAll(".scroll-button-container").forEach(m=>{g&&m.classList.add("opacityhide")})},l=function(m){m&&(g=!0);document.querySelectorAll(".scroll-button-container").forEach(q=>q.classList.remove("opacityhide"));f!=null&&(clearTimeout(f),f=null);f=setTimeout(k,2E3)};b&&b.addEventListener("scroll",()=>l(!0));globalThis.addEventListener("scroll",()=>l(!1));const n=document.getElementById("btnScrollLeft"), 49p=document.getElementById("btnScrollRight");n&&b&&n.addEventListener("click",function(){l(!0);b.scrollBy({left:-(b.clientWidth*.75),behavior:"smooth"})});p&&b&&p.addEventListener("click",function(){l(!0);b.scrollBy({left:b.clientWidth*.75,behavior:"smooth"})})},windowResized:function(){h.calculateScrollPositions();d&&b&&(b.scrollLeft=d*b.scrollWidth)},calculateScrollPositions:function(){var f=document.getElementsByClassName(a.dayClass);if(b)for(const g of f)f=g.offsetLeft-b.offsetLeft+g.offsetWidth- 50b.offsetWidth,f<0&&(f=0),f>b.scrollWidth-b.offsetWidth&&(f=b.scrollWidth-b.offsetWidth),c[g.id]={offsetLeft:f,tabId:g.dataset.contentId}},timeLineScrolled:function(f){d=f.target.scrollLeft/f.target.scrollWidth;a.onScrollPositionChanged(Math.ceil(f.target.scrollLeft)+2);h.showHideScrollButtons()},scrollToDay:function(f){const g=document.getElementById("day"+f);f=c["day"+f];b&&g&&f&&(b.scrollTo({left:f.offsetLeft}),e=g,h.showHideScrollButtons())},initDayFocus:function(){const f=document.getElementsByClassName(a.dayClass); 51for(const g of f)g.addEventListener("focus",h.tableFocused)},getLastDayIndex:function(){return document.getElementsByClassName(a.dayClass).length-1},getDayIndexFromScrollPosition:function(f){if(!b)return null;var g=b.querySelectorAll("."+a.dayClass);f<0&&(f=0);if(b.offsetWidth+f>=b.scrollWidth)return g.length-1;g=Object.keys(c).sort((k,l)=>k.localeCompare(l)).reverse();for(const k of g)if(f>=c[k].offsetLeft-10)return Number.parseInt(k.replace("day",""),10);return null},getTabIdFromScrollPosition:function(f){if(!b)return null; 52var g=b.querySelectorAll("."+a.dayClass);f<0&&(f=0);if(b.offsetWidth+f>=b.scrollWidth)return g[g.length-1]?.dataset.contentId??null;g=Object.keys(c).sort((k,l)=>k.localeCompare(l)).reverse();for(const k of g)if(f>=c[k].offsetLeft-10)return c[k].tabId;return null}};return h};"use strict";window.addEventListener("DOMContentLoaded",()=>document.querySelectorAll(".settings-button").forEach(a=>a.addEventListener("click",()=>window.location.href="/settings")));"use strict"; 53function setCookie(a,b,c){const d=new Date;d.setTime(d.getTime()+c*24*60*60*1E3);c=";
53expires\x3d"+d.toUTCString();document.cookie=a+"\x3d"+encodeURIComponent(b)+c+";path\x3d/"}function getCookie(a){a+="\x3d";const b=document.cookie.split(";");for(let c=0;c<b.length;c++){let d=b[c].trim();if(d.indexOf(a)===0)return decodeURIComponent(d.substring(a.length))}return null} 54function readUnitsFromStorage(){var a=getCookie("MOWxUnits");if(a)try{return JSON.parse(a)}catch(b){console.warn("Invalid units in cookie: ",a,b)}if(a=window.localStorage.getItem("moWeatherUnits"))try{return JSON.parse(a)}catch(b){console.warn("Invalid units in storage: ",a,b)}return{}} 55function saveUnitsToStorage(a){if(Object.keys(a).length===0)deleteUnitsFromStorage();else{var b=JSON.stringify(a);setCookie("MOWxUnits",b,365);window.metoffice.storage&&window.metoffice.storage.setCookie("moWeatherUnits",a,365)}}function deleteUnitsFromStorage(){setCookie("MOWxUnits","",-1);window.metoffice.storage&&window.metoffice.storage.setCookie("moWeatherUnits","",-1);window.localStorage.removeItem("moWeatherUnits")}"use strict"; 56const loadSurveyData=a=>{window.gsc=window.gsc||function(){(gsc.q=gsc.q||[]).push(arguments)};var b=window.metoffice.storage.getCookies().abTestConsent;const c=window.metoffice.storage.getItem("abTests");b=b!=null?b:!1;const d=document.location.host==="weather.metoffice.gov.uk",e=getPathEnd(window.location.href);var h=document.querySelector('link[rel\x3d"canonical"]');h=h?.href?getPathEnd(h.href):e;const f=window.metoffice.hash.getHashParameter("date"),g=c==null?!1:JSON.parse(c).state.updatedForecastDesign; 57gsc("params",{schemaVersion:a,hasAbTestConsent:b,isTesting:!d,forecastLocationGeohash:h,forecastDate:f,deviceLocationGeohash:e,url:window.location.href,siteVariant:g?"website v2":"website v1",submittedAtUtC:(new Date).toISOString(),abTests:c})},getPathEnd=a=>{a=(new URL(a)).pathname.split("/").filter(Boolean);return a[a.length-1]||null},getAbTestingValue=a=>{const b=window.metoffice.storage.getItem("abTests");return b==null?null:JSON.parse(b).state[a]},mapAbTestingValue=a=>a==="true"?"A":"B"; 58window.metoffice.warningsSurveys={surveyLinkClick:a=>{loadSurveyData("2");const b=getAbTestingValue("ttwsVideos");gsc("params",{abTestExperimentId:"ttwsVideos",abTestGroup:b==null?"Z":b,warningColour:a.dataset.warningcolour,warningHeadline:a.dataset.warningheadline,warningTypes:a.dataset.types,warningImpact:a.dataset.impact,warningLikelihood:a.dataset.likelihood,warningRegions:a.dataset.regions,warningIssued:a.dataset.issued})}}; 59window.metoffice.forecastSurveys={surveyLinkClick:()=>{loadSurveyData("1");const a=getAbTestingValue("show14DayForecast");gsc("params",{abTestExperimentId:"show14DayForecast",abTestGroup:a==null?"Z":mapAbTestingValue(a)})}};window.addEventListener("DOMContentLoaded",()=>{window.location.href.includes("\x3dfalse")&&loadSurveyData("7")});window.metoffice=window.metoffice||{}; 60window.metoffice.tabs2={init:function(){let a=document.querySelectorAll("ul.tab2-container");for(let b=0;b<a.length;b++){a[b].setAttribute("role","tablist");let c=a[b].querySelectorAll("li");for(let d=0;d<c.length;d++)if(c[d].addEventListener("click",window.metoffice.tabs2.tabClickHandler),c[d].addEventListener("keydown",window.metoffice.tabs2.tabChangedKeyboardHandler),c[d].setAttribute("tabindex",d===0?"0":"-1"),c[d].dataset.contentId&&!c[d].classList.contains("active")&&document.getElementById(c[d].dataset.contentId).setAttribute("hidden", 61""),c[d].setAttribute("role","tab"),c[d].setAttribute("aria-selected",c[d].classList.contains("active")),c[d].dataset.contentId){c[d].setAttribute("aria-controls",c[d].dataset.contentId);let e=document.getElementById(c[d].dataset.contentId);e&&(e.setAttribute("tabindex","0"),e.setAttribute("role","tabpanel"),e.setAttribute("aria-expanded",c[d].classList.contains("active")))}}},tabChangedKeyboardHandler:function(a){a.code==="Enter"||a.code==="Space"?(a.preventDefault(),a.target.click()):event.code=== 62"ArrowLeft"?(a.preventDefault(),a.target.previousElementSibling&&a.target.previousElementSibling.focus()):event.code==="ArrowRight"&&(a.preventDefault(),a.target.nextElementSibling&&a.target.nextElementSibling.focus())},tabClickHandler:function(a){a=a.target.closest("ul.tab2-container \x3e li");var b=a.parentElement.getElementsByTagName("li");for(let e=0;e<b.length;
62e++)if(b[e].classList.remove("active"),b[e].setAttribute("tabindex","-1"),b[e].setAttribute("aria-selected","false"),b[e].dataset.contentId){document.getElementById(b[e].dataset.contentId).setAttribute("hidden", 63"");document.getElementById(b[e].dataset.contentId).setAttribute("aria-expanded",!1);for(var c of document.getElementsByClassName(b[e].dataset.contentId))c.classList.remove("active")}c=document.getElementById(a.dataset.contentId);b=document.getElementsByClassName(a.dataset.contentId);if(c){c.removeAttribute("hidden");c.setAttribute("aria-expanded",!0);for(var d of b)d.classList.add("active")}a.classList.add("active");a.setAttribute("aria-selected","true");a.setAttribute("tabindex","0");d=Math.max(document.documentElement.clientWidth, 64window.innerWidth||0)/2;c=a.offsetWidth/2+a.offsetLeft;(a=a.closest(".tab-scroll"))&&a.scrollTo({left:c-d,behavior:"smooth"})}};window.metoffice.tabs2.init();
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.