CINXE.COM

Visit Shrewsbury | Train Tickets | TfW

<!DOCTYPE html> <html lang="en" dir="ltr" prefix="content: http://purl.org/rss/1.0/modules/content/ dc: http://purl.org/dc/terms/ foaf: http://xmlns.com/foaf/0.1/ og: http://ogp.me/ns# rdfs: http://www.w3.org/2000/01/rdf-schema# schema: http://schema.org/ sioc: http://rdfs.org/sioc/ns# sioct: http://rdfs.org/sioc/types# skos: http://www.w3.org/2004/02/skos/core# xsd: http://www.w3.org/2001/XMLSchema# "> <head><script type="text/javascript" src="/_static/js/bundle-playback.js?v=HxkREWBo" charset="utf-8"></script> <script type="text/javascript" src="/_static/js/wombat.js?v=txqj7nKC" charset="utf-8"></script> <script>window.RufflePlayer=window.RufflePlayer||{};window.RufflePlayer.config={"autoplay":"on","unmuteOverlay":"hidden"};</script> <script type="text/javascript" src="/_static/js/ruffle/ruffle.js"></script> <script type="text/javascript"> __wm.init("http://web.archive.org/web"); __wm.wombat("https://tfw.wales/places/destinations/shrewsbury","20231210063606","http://web.archive.org/","web","/_static/", "1702190166"); </script> <link rel="stylesheet" type="text/css" href="/_static/css/banner-styles.css?v=S1zqJCYt" /> <link rel="stylesheet" type="text/css" href="/_static/css/iconochive.css?v=3PDvdIFv" /> <!-- End Wayback Rewrite JS Include --> <meta charset="utf-8"/><script type="text/javascript">(window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:["bam.eu01.nr-data.net"]},distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:"538476161",accountID:"3139283",trustKey:"3139283",xpid:"VwcEWFRbCxAFV1FQAgcCV1c=",licenseKey:"NRJS-34dae6faa52b003b8b9",applicationID:"530256513"};;/*! For license information please see nr-loader-spa-1.248.0.min.js.LICENSE.txt */ (()=>{var e,t,r={234:(e,t,r)=>{"use strict";r.d(t,{P_:()=>g,Mt:()=>v,C5:()=>s,DL:()=>A,OP:()=>D,lF:()=>N,Yu:()=>x,Dg:()=>m,CX:()=>c,GE:()=>w,sU:()=>j});var n=r(8632),i=r(9567);const o={beacon:n.ce.beacon,errorBeacon:n.ce.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0},a={};function s(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function c(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.D)(t,o);const r=(0,n.ek)(e);r&&(r.info=a[e])}const u=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var d=r(7056),l=r(50);const f=()=>{const e={mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{feature_flags:[],proxy:{assets:void 0,beacon:void 0},privacy:{cookies_enabled:!0},ajax:{deny_list:void 0,block_internal:!0,enabled:!0,harvestTimeSeconds:10,autoStart:!0},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},session:{domain:void 0,expiresMs:d.oD,inactiveMs:d.Hb},ssl:void 0,obfuscate:void 0,jserrors:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},metrics:{enabled:!0,autoStart:!0},page_action:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,harvestTimeSeconds:30,long_task:!1,autoStart:!0},session_trace:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},harvest:{tooManyRequestsDelay:60},session_replay:{autoStart:!0,enabled:!1,harvestTimeSeconds:60,sampling_rate:50,error_sampling_rate:50,collect_fonts:!1,inline_images:!1,inline_stylesheet:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){u(t)?e.mask_selector=t+",[data-nr-mask]":null===t?e.mask_selector=t:(0,l.Z)("An invalid session_replay.mask_selector was provided and will not be used",t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){u(t)?e.block_selector+=",".concat(t):""!==t&&(0,l.Z)("An invalid session_replay.block_selector was provided and will not be used",t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,l.Z)("An invalid session_replay.mask_input_option was provided and will not be used",t)}},spa:{enabled:!0,harvestTimeSeconds:10,autoStart:!0}}},h={},p="All configuration objects require an agent identifier!";function g(e){if(!e)throw new Error(p);if(!h[e])throw new Error("Configuration for ".concat(e," was never set"));return h[e]}function m(e,t){if(!e)throw new Error(p);h[e]=(0,i.D)(t,f());const r=(0,n.ek)(e);r&&(r.init=h[e])}function v(e,t){if(!e)throw new Error(p);var r=g(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}const b={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},y={};function A(e){if(!e)throw new Error("All loader-config objects require an agent identifier!");if(!y[e])throw new Error("LoaderConfig for ".concat(e," was never set"));return y[e]}function w(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");y[e]=(0,i.D)(t,b);const r=(0,n.ek)(e);r&&(r.loader_config=y[e])}const x=(0,n.mF)().o;var E=r(385),_=r(6818);const T={buildEnv:_.Re,customTransaction:void 0,disabled:!1,distMethod:_.gF,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,offset:Math.floor(E._A?.performance?.timeOrigin||E._A?.performance?.timing?.navigationStart||Date.now()),onerror:void 0,origin:""+E._A.location,ptid:void 0,releaseIds:{},session:void 0,xhrWrappable:"function"==typeof E._A.XMLHttpRequest?.prototype?.addEventListener,version:_.q4,denyList:void 0},S={};function D(e){if(!e)throw new Error("All runtime objects require an agent identifier!");if(!S[e])throw new Error("Runtime for ".concat(e," was never set"));return S[e]}function j(e,t){if(!e)throw new Error("All runtime objects require an agent identifier!");S[e]=(0,i.D)(t,T);const r=(0,n.ek)(e);r&&(r.runtime=S[e])}function N(e){return function(e){try{const t=s(e);return!!t.licenseKey&&!!t.errorBeacon&&!!t.applicationID}catch(e){return!1}}(e)}},9567:(e,t,r)=>{"use strict";r.d(t,{D:()=>i});var n=r(50);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.Z)("Setting a Configurable requires an object as input");if(!t||"object"!=typeof t)return(0,n.Z)("Setting a Configurable requires a model to set its initial properties");const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.Z)("An error occurred while setting a property of a Configurable",e)}return r}catch(e){(0,n.Z)("An error occured while setting a Configurable",e)}}},6818:(e,t,r)=>{"use strict";r.d(t,{Re:()=>i,gF:()=>o,lF:()=>a,q4:()=>n});const n="1.248.0",i="PROD",o="CDN",a="2.0.0-alpha.11"},385:(e,t,r)=>{"use strict";r.d(t,{FN:()=>c,IF:()=>l,LW:()=>a,Nk:()=>h,Tt:()=>u,_A:()=>o,cv:()=>p,iS:()=>s,il:()=>n,ux:()=>d,v6:()=>i,w1:()=>f});const n="undefined"!=typeof window&&!!window.document,i="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),o=n?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),a="complete"===o?.document?.readyState,s=Boolean("hidden"===o?.document?.visibilityState),c=""+o?.location,u=/iPad|iPhone|iPod/.test(o.navigator?.userAgent),d=u&&"undefined"==typeof SharedWorker,l=(()=>{const e=o.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),f=Boolean(n&&window.document.documentMode),h=!!o.navigator?.sendBeacon,p=Math.floor(o?.performance?.timeOrigin||o?.performance?.timing?.navigationStart||Date.now())},1117:(e,t,r)=>{"use strict";r.d(t,{w:()=>o});var n=r(50);const i={agentIdentifier:"",ee:void 0};class o{constructor(e){try{if("object"!=typeof e)return(0,n.Z)("shared context requires an object as input");this.sharedContext={},Object.assign(this.sharedContext,i),Object.entries(e).forEach((e=>{let[t,r]=e;Object.keys(i).includes(t)&&(this.sharedContext[t]=r)}))}catch(e){(0,n.Z)("An error occured while setting SharedContext",e)}}}},8e3:(e,t,r)=>{"use strict";r.d(t,{L:()=>d,R:()=>c});var n=r(8325),i=r(1284),o=r(4322),a=r(3325);const s={};function c(e,t){const r={staged:!1,priority:a.p[t]||0};u(e),s[e].get(t)||s[e].set(t,r)}function u(e){e&&(s[e]||(s[e]=new Map))}function d(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"feature";if(u(e),!e||!s[e].get(t))return a(t);s[e].get(t).staged=!0;const r=[...s[e]];function a(t){const r=e?n.ee.get(e):n.ee,a=o.X.handlers;if(r.backlog&&a){var s=r.backlog[t],c=a[t];if(c){for(var u=0;s&&u<s.length;++u)l(s[u],c);(0,i.D)(c,(function(e,t){(0,i.D)(t,(function(t,r){r[0].on(e,r[1])}))}))}delete a[t],r.backlog[t]=null,r.emit("drain-"+t,[])}}r.every((e=>{let[t,r]=e;return r.staged}))&&(r.sort(((e,t)=>e[1].priority-t[1].priority)),r.forEach((t=>{let[r]=t;s[e].delete(r),a(r)})))}function l(e,t){var r=e[1];(0,i.D)(t[r],(function(t,r){var n=e[0];if(r[0]===n){var i=r[1],o=e[3],a=e[2];i.apply(o,a)}}))}},8325:(e,t,r)=>{"use strict";r.d(t,{A:()=>c,ee:()=>u});var n=r(8632),i=r(2210),o=r(234);class a{constructor(e){this.contextId=e}}var s=r(3117);const c="nr@context:".concat(s.a),u=function e(t,r){var n={},s={},d={},f=!1;try{f=16===r.length&&(0,o.OP)(r).isolatedBacklog}catch(e){}var h={on:g,addEventListener:g,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=p(n),c=m(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var f=b()[s[e]];f&&f.push([h,e,r,a]);return a},get:v,listeners:m,context:p,buffer:function(e,t){const r=b();if(t=t||"feature",h.aborted)return;Object.entries(e||{}).forEach((e=>{let[n,i]=e;s[i]=t,t in r||(r[t]=[])}))},abort:l,aborted:!1,isBuffering:function(e){return!!b()[s[e]]},debugId:r,backlog:f?{}:t&&"object"==typeof t.backlog?t.backlog:{}};return h;function p(e){return e&&e instanceof a?e:e?(0,i.X)(e,c,(()=>new a(c))):new a(c)}function g(e,t){n[e]=m(e).concat(t)}function m(e){return n[e]||[]}function v(t){return d[t]=d[t]||e(h,t)}function b(){return h.backlog}}(void 0,"globalEE"),d=(0,n.fP)();function l(){u.aborted=!0,u.backlog={}}d.ee||(d.ee=u)},5546:(e,t,r)=>{"use strict";r.d(t,{E:()=>n,p:()=>i});var n=r(8325).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},4322:(e,t,r)=>{"use strict";r.d(t,{X:()=>o});var n=r(5546);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.E,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.E);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3239:(e,t,r)=>{"use strict";r.d(t,{bP:()=>s,iz:()=>c,m$:()=>a});var n=r(385);let i=!1,o=!1;try{const e={get passive(){return i=!0,!1},get signal(){return o=!0,!1}};n._A.addEventListener("test",null,e),n._A.removeEventListener("test",null,e)}catch(e){}function a(e,t){return i||o?{capture:!!e,passive:i,signal:t}:!!e}function s(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=arguments.length>3?arguments[3]:void 0;window.addEventListener(e,t,a(r,n))}function c(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=arguments.length>3?arguments[3]:void 0;document.addEventListener(e,t,a(r,n))}},3117:(e,t,r)=>{"use strict";r.d(t,{a:()=>n});const n=(0,r(4402).Rl)()},4402:(e,t,r)=>{"use strict";r.d(t,{Ht:()=>u,M:()=>c,Rl:()=>a,ky:()=>s});var n=r(385);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n._A?.crypto||n._A?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(31))),i.split("").map((e=>"x"===e?o(t,++r).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n._A?.crypto||n._A?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(31)));const a=[];for(var s=0;s<e;s++)a.push(o(r,++i).toString(16));return a.join("")}function c(){return s(16)}function u(){return s(32)}},7056:(e,t,r)=>{"use strict";r.d(t,{Bq:()=>n,Hb:()=>o,oD:()=>i});const n="NRBA",i=144e5,o=18e5},7894:(e,t,r)=>{"use strict";function n(){return Math.round(performance.now())}r.d(t,{z:()=>n})},7243:(e,t,r)=>{"use strict";r.d(t,{e:()=>i});var n=r(385);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n._A?.location?.protocol&&t.host===n._A?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},50:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.warn&&(console.warn("New Relic: ".concat(e)),t&&console.warn(t))}r.d(t,{Z:()=>n})},2825:(e,t,r)=>{"use strict";r.d(t,{N:()=>d,T:()=>l});var n=r(8325),i=r(5546),o=r(3325),a=r(385);const s="newrelic";const c={stn:[o.D.sessionTrace],err:[o.D.jserrors,o.D.metrics],ins:[o.D.pageAction],spa:[o.D.spa],sr:[o.D.sessionReplay,o.D.sessionTrace]},u=new Set;function d(e,t){const r=n.ee.get(t);e&&"object"==typeof e&&(u.has(t)||(Object.entries(e).forEach((e=>{let[t,n]=e;c[t]?c[t].forEach((e=>{n?(0,i.p)("feat-"+t,[],void 0,e,r):(0,i.p)("block-"+t,[],void 0,e,r),(0,i.p)("rumresp-"+t,[Boolean(n)],void 0,e,r)})):n&&(0,i.p)("feat-"+t,[],void 0,void 0,r),l[t]=Boolean(n)})),Object.keys(c).forEach((e=>{void 0===l[e]&&(c[e]?.forEach((t=>(0,i.p)("rumresp-"+e,[!1],void 0,t,r))),l[e]=!1)})),u.add(t),function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};try{a._A.dispatchEvent(new CustomEvent(s,{detail:e}))}catch(e){}}({loaded:!0})))}const l={}},2210:(e,t,r)=>{"use strict";r.d(t,{X:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},1284:(e,t,r)=>{"use strict";r.d(t,{D:()=>n});const n=(e,t)=>Object.entries(e||{}).map((e=>{let[r,n]=e;return t(r,n)}))},4351:(e,t,r)=>{"use strict";r.d(t,{P:()=>o});var n=r(8325);const i=()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}};function o(e){try{return JSON.stringify(e,i())}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}}}},3960:(e,t,r)=>{"use strict";r.d(t,{KB:()=>a,b2:()=>o});var n=r(3239);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.bP)("load",e,t)}function a(e){if(i())return e();(0,n.iz)("DOMContentLoaded",e)}},8632:(e,t,r)=>{"use strict";r.d(t,{EZ:()=>d,ce:()=>o,ek:()=>u,fP:()=>a,gG:()=>l,h5:()=>c,mF:()=>s});var n=r(7894),i=r(385);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return i._A.NREUM||(i._A.NREUM={}),void 0===i._A.newrelic&&(i._A.newrelic=i._A.NREUM),i._A.NREUM}function s(){let e=a();return e.o||(e.o={ST:i._A.setTimeout,SI:i._A.setImmediate,CT:i._A.clearTimeout,XHR:i._A.XMLHttpRequest,REQ:i._A.Request,EV:i._A.Event,PR:i._A.Promise,MO:i._A.MutationObserver,FETCH:i._A.fetch}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,n.z)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},7956:(e,t,r)=>{"use strict";r.d(t,{N:()=>i});var n=r(3239);function i(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=arguments.length>2?arguments[2]:void 0,i=arguments.length>3?arguments[3]:void 0;(0,n.iz)("visibilitychange",(function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)}),r,i)}},1214:(e,t,r)=>{"use strict";r.d(t,{em:()=>b,u5:()=>D,QU:()=>C,_L:()=>I,Gm:()=>H,Lg:()=>L,BV:()=>G,Kf:()=>K});var n=r(8325),i=r(3117);const o="nr@original:".concat(i.a);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=""),nrWrapper[o]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach((function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})})),t}catch(e){u([e],r)}for(var n in e)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],d],e)}i(r+"start",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],d,c),e}finally{i(r+"end",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function d(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}var l=r(2210),f=r(385);const h={},p=f._A.XMLHttpRequest,g="addEventListener",m="removeEventListener",v="nr@wrapped:".concat(n.A);function b(e){var t=function(e){return(e||n.ee).get("events")}(e);if(h[t.debugId]++)return t;h[t.debugId]=1;var r=c(t,!0);function i(e){r.inPlace(e,[g,m],"-",o)}function o(e,t){return e[1]}return"getPrototypeOf"in Object&&(f.il&&y(document,i),y(f._A,i),y(p.prototype,i)),t.on(g+"-start",(function(e,t){var n=e[1];if(null!==n&&("function"==typeof n||"object"==typeof n)){var i=(0,l.X)(n,v,(function(){var e={object:function(){if("function"!=typeof n.handleEvent)return;return n.handleEvent.apply(n,arguments)},function:n}[typeof n];return e?r(e,"fn-",null,e.name||"anonymous"):n}));this.wrapped=e[1]=i}})),t.on(m+"-start",(function(e){e[1]=this.wrapped||e[1]})),t}function y(e,t){let r=e;for(;"object"==typeof r&&!Object.prototype.hasOwnProperty.call(r,g);)r=Object.getPrototypeOf(r);for(var n=arguments.length,i=new Array(n>2?n-2:0),o=2;o<n;o++)i[o-2]=arguments[o];r&&t(r,...i)}var A="fetch-",w=A+"body-",x=["arrayBuffer","blob","json","text","formData"],E=f._A.Request,_=f._A.Response,T="prototype";const S={};function D(e){const t=function(e){return(e||n.ee).get("fetch")}(e);if(!(E&&_&&f._A.fetch))return t;if(S[t.debugId]++)return t;function r(e,r,i){var o=e[r];"function"==typeof o&&(e[r]=function(){var e,r=[...arguments],a={};t.emit(i+"before-start",[r],a),a[n.A]&&a[n.A].dt&&(e=a[n.A].dt);var s=o.apply(this,r);return t.emit(i+"start",[r,e],s),s.then((function(e){return t.emit(i+"end",[null,e],s),e}),(function(e){throw t.emit(i+"end",[e],s),e}))})}return S[t.debugId]=1,x.forEach((e=>{r(E[T],e,w),r(_[T],e,w)})),r(f._A,"fetch",A),t.on(A+"end",(function(e,r){var n=this;if(r){var i=r.headers.get("content-length");null!==i&&(n.rxSize=i),t.emit(A+"done",[null,r],n)}else t.emit(A+"done",[e],n)})),t}const j={},N=["pushState","replaceState"];function C(e){const t=function(e){return(e||n.ee).get("history")}(e);return!f.il||j[t.debugId]++||(j[t.debugId]=1,c(t).inPlace(window.history,N,"-")),t}var R=r(3239);const O={},P=["appendChild","insertBefore","replaceChild"];function I(e){const t=function(e){return(e||n.ee).get("jsonp")}(e);if(!f.il||O[t.debugId])return t;O[t.debugId]=!0;var r=c(t),i=/[?&](?:callback|cb)=([^&#]+)/,o=/(.*)\.([^.]+)/,a=/^(\w+)(\.|$)(.*)$/;function s(e,t){if(!e)return t;const r=e.match(a),n=r[1];return s(r[3],t[n])}return r.inPlace(Node.prototype,P,"dom-"),t.on("dom-start",(function(e){!function(e){if(!e||"string"!=typeof e.nodeName||"script"!==e.nodeName.toLowerCase())return;if("function"!=typeof e.addEventListener)return;var n=(a=e.src,c=a.match(i),c?c[1]:null);var a,c;if(!n)return;var u=function(e){var t=e.match(o);if(t&&t.length>=3)return{key:t[2],parent:s(t[1],window)};return{key:e,parent:window}}(n);if("function"!=typeof u.parent[u.key])return;var d={};function l(){t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,R.m$)(!1)),e.removeEventListener("error",f,(0,R.m$)(!1))}function f(){t.emit("jsonp-error",[],d),t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,R.m$)(!1)),e.removeEventListener("error",f,(0,R.m$)(!1))}r.inPlace(u.parent,[u.key],"cb-",d),e.addEventListener("load",l,(0,R.m$)(!1)),e.addEventListener("error",f,(0,R.m$)(!1)),t.emit("new-jsonp",[e.src],d)}(e[0])})),t}const k={};function H(e){const t=function(e){return(e||n.ee).get("mutation")}(e);if(!f.il||k[t.debugId])return t;k[t.debugId]=!0;var r=c(t),i=f._A.MutationObserver;return i&&(window.MutationObserver=function(e){return this instanceof i?new i(r(e,"fn-")):i.apply(this,arguments)},MutationObserver.prototype=i.prototype),t}const z={};function L(e){const t=function(e){return(e||n.ee).get("promise")}(e);if(z[t.debugId])return t;z[t.debugId]=!0;var r=t.context,i=c(t),a=f._A.Promise;return a&&function(){function e(r){var n=t.context(),o=i(r,"executor-",n,null,!1);const s=Reflect.construct(a,[o],e);return t.context(s).getCtx=function(){return n},s}f._A.Promise=e,Object.defineProperty(e,"name",{value:"Promise"}),e.toString=function(){return a.toString()},Object.setPrototypeOf(e,a),["all","race"].forEach((function(r){const n=a[r];e[r]=function(e){let i=!1;[...e||[]].forEach((e=>{this.resolve(e).then(a("all"===r),a(!1))}));const o=n.apply(this,arguments);return o;function a(e){return function(){t.emit("propagate",[null,!i],o,!1,!1),i=i||!e}}}})),["resolve","reject"].forEach((function(r){const n=a[r];e[r]=function(e){const r=n.apply(this,arguments);return e!==r&&t.emit("propagate",[e,!0],r,!1,!1),r}})),e.prototype=a.prototype;const n=a.prototype.then;a.prototype.then=function(){var e=this,o=r(e);o.promise=e;for(var a=arguments.length,s=new Array(a),c=0;c<a;c++)s[c]=arguments[c];s[0]=i(s[0],"cb-",o,null,!1),s[1]=i(s[1],"cb-",o,null,!1);const u=n.apply(this,s);return o.nextPromise=u,t.emit("propagate",[e,!0],u,!1,!1),u},a.prototype.then[o]=n,t.on("executor-start",(function(e){e[0]=i(e[0],"resolve-",this,null,!1),e[1]=i(e[1],"resolve-",this,null,!1)})),t.on("executor-err",(function(e,t,r){e[1](r)})),t.on("cb-end",(function(e,r,n){t.emit("propagate",[n,!0],this.nextPromise,!1,!1)})),t.on("propagate",(function(e,r,n){this.getCtx&&!r||(this.getCtx=function(){if(e instanceof Promise)var r=t.context(e);return r&&r.getCtx?r.getCtx():this})}))}(),t}const M={},F="setTimeout",B="setInterval",U="clearTimeout",Z="-start",V="-",q=[F,"setImmediate",B,U,"clearImmediate"];function G(e){const t=function(e){return(e||n.ee).get("timer")}(e);if(M[t.debugId]++)return t;M[t.debugId]=1;var r=c(t);return r.inPlace(f._A,q.slice(0,2),F+V),r.inPlace(f._A,q.slice(2,3),B+V),r.inPlace(f._A,q.slice(3),U+V),t.on(B+Z,(function(e,t,n){e[0]=r(e[0],"fn-",null,n)})),t.on(F+Z,(function(e,t,n){this.method=n,this.timerDuration=isNaN(e[1])?0:+e[1],e[0]=r(e[0],"fn-",this,n)})),t}var W=r(50);const X={},Y=["open","send"];function K(e){var t=e||n.ee;const r=function(e){return(e||n.ee).get("xhr")}(t);if(X[r.debugId]++)return r;X[r.debugId]=1,b(t);var i=c(r),o=f._A.XMLHttpRequest,a=f._A.MutationObserver,s=f._A.Promise,u=f._A.setInterval,d="readystatechange",l=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],h=[],p=f._A.XMLHttpRequest=function(e){const t=new o(e),n=r.context(t);try{r.emit("new-xhr",[t],n),t.addEventListener(d,(a=n,function(){var e=this;e.readyState>3&&!a.resolved&&(a.resolved=!0,r.emit("xhr-resolved",[],e)),i.inPlace(e,l,"fn-",w)}),(0,R.m$)(!1))}catch(e){(0,W.Z)("An error occurred while intercepting XHR",e);try{r.emit("internal-error",[e])}catch(e){}}var a;return t};function g(e,t){i.inPlace(t,["onreadystatechange"],"fn-",w)}if(function(e,t){for(var r in e)t[r]=e[r]}(o,p),p.prototype=o.prototype,i.inPlace(p.prototype,Y,"-xhr-",w),r.on("send-xhr-start",(function(e,t){g(e,t),function(e){h.push(e),a&&(m?m.then(A):u?u(A):(v=-v,y.data=v))}(t)})),r.on("open-xhr-start",g),a){var m=s&&s.resolve();if(!u&&!s){var v=1,y=document.createTextNode(v);new a(A).observe(y,{characterData:!0})}}else t.on("fn-end",(function(e){e[0]&&e[0].type===d||A()}));function A(){for(var e=0;e<h.length;e++)g(0,h[e]);h.length&&(h=[])}function w(e,t){return t}return r}},7825:(e,t,r)=>{"use strict";r.d(t,{t:()=>n});const n=r(3325).D.ajax},6660:(e,t,r)=>{"use strict";r.d(t,{t:()=>n});const n=r(3325).D.jserrors},3081:(e,t,r)=>{"use strict";r.d(t,{gF:()=>o,mY:()=>i,t9:()=>n,vz:()=>s,xS:()=>a});const n=r(3325).D.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},4649:(e,t,r)=>{"use strict";r.d(t,{t:()=>n});const n=r(3325).D.pageAction},7633:(e,t,r)=>{"use strict";r.d(t,{t:()=>n});const n=r(3325).D.pageViewEvent},9251:(e,t,r)=>{"use strict";r.d(t,{t:()=>n});const n=r(3325).D.pageViewTiming},7144:(e,t,r)=>{"use strict";r.d(t,{t:()=>n});const n=r(3325).D.sessionReplay},3614:(e,t,r)=>{"use strict";r.d(t,{BST_RESOURCE:()=>i,END:()=>s,FEATURE_NAME:()=>n,FN_END:()=>u,FN_START:()=>c,PUSH_STATE:()=>d,RESOURCE:()=>o,START:()=>a});const n=r(3325).D.sessionTrace,i="bstResource",o="resource",a="-start",s="-end",c="fn"+a,u="fn"+s,d="pushState"},7836:(e,t,r)=>{"use strict";r.d(t,{BODY:()=>x,CB_END:()=>E,CB_START:()=>u,END:()=>w,FEATURE_NAME:()=>i,FETCH:()=>T,FETCH_BODY:()=>v,FETCH_DONE:()=>m,FETCH_START:()=>g,FN_END:()=>c,FN_START:()=>s,INTERACTION:()=>f,INTERACTION_API:()=>d,INTERACTION_EVENTS:()=>o,JSONP_END:()=>b,JSONP_NODE:()=>p,JS_TIME:()=>_,MAX_TIMER_BUDGET:()=>a,REMAINING:()=>l,SPA_NODE:()=>h,START:()=>A,originalSetTimeout:()=>y});var n=r(234);const i=r(3325).D.spa,o=["click","submit","keypress","keydown","keyup","change"],a=999,s="fn-start",c="fn-end",u="cb-start",d="api-ixn-",l="remaining",f="interaction",h="spaNode",p="jsonpNode",g="fetch-start",m="fetch-done",v="fetch-body-",b="jsonp-end",y=n.Yu.ST,A="-start",w="-end",x="-body",E="cb"+w,_="jsTime",T="fetch"},5938:(e,t,r)=>{"use strict";r.d(t,{W:()=>i});var n=r(8325);class i{constructor(e,t,r){this.agentIdentifier=e,this.aggregator=t,this.ee=n.ee.get(e),this.featureName=r,this.blocked=!1}}},7530:(e,t,r)=>{"use strict";r.d(t,{j:()=>b});var n=r(3325),i=r(234),o=r(5546),a=r(8325),s=r(7894),c=r(8e3),u=r(3960),d=r(385),l=r(50),f=r(3081),h=r(8632);function p(){const e=(0,h.gG)();["setErrorHandler","finished","addToTrace","addRelease","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start","recordReplay","pauseReplay"].forEach((t=>{e[t]=function(){for(var r=arguments.length,n=new Array(r),i=0;i<r;i++)n[i]=arguments[i];return function(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];let o=[];return Object.values(e.initializedAgents).forEach((e=>{e.exposed&&e.api[t]&&o.push(e.api[t](...n))})),o.length>1?o:o[0]}(t,...n)}}))}var g=r(2825);const m=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let v=!1;function b(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},b=arguments.length>2?arguments[2]:void 0,y=arguments.length>3?arguments[3]:void 0,{init:A,info:w,loader_config:x,runtime:E={loaderType:b},exposed:_=!0}=t;const T=(0,h.gG)();w||(A=T.init,w=T.info,x=T.loader_config),(0,i.Dg)(e.agentIdentifier,A||{}),(0,i.GE)(e.agentIdentifier,x||{}),w.jsAttributes??={},d.v6&&(w.jsAttributes.isWorker=!0),(0,i.CX)(e.agentIdentifier,w);const S=(0,i.P_)(e.agentIdentifier),D=[w.beacon,w.errorBeacon];v||(S.proxy.assets&&(m(S.proxy.assets),D.push(S.proxy.assets)),S.proxy.beacon&&D.push(S.proxy.beacon),p(),(0,h.EZ)("activatedFeatures",g.T)),E.denyList=[...S.ajax.deny_list||[],...S.ajax.block_internal?D:[]],(0,i.sU)(e.agentIdentifier,E),void 0===e.api&&(e.api=function(e,t){t||(0,c.R)(e,"api");const h={};var p=a.ee.get(e),g=p.get("tracer"),m="api-",v=m+"ixn-";function b(t,r,n,o){const a=(0,i.C5)(e);return null===r?delete a.jsAttributes[t]:(0,i.CX)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),w(m,n,!0,o||null===r?"session":void 0)(t,r)}function y(){}["setErrorHandler","finished","addToTrace","addRelease"].forEach((e=>{h[e]=w(m,e,!0,"api")})),h.addPageAction=w(m,"addPageAction",!0,n.D.pageAction),h.setCurrentRouteName=w(m,"routeName",!0,n.D.spa),h.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,i.OP)(e).customTransaction=(r||"http://web.archive.org/web/20231210063606/http://custom.transaction")+t,w(m,"setPageViewName",!0)()},h.setCustomAttribute=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return b(e,t,"setCustomAttribute",r);(0,l.Z)("Failed to execute setCustomAttribute.\nNon-null value must be a string, number or boolean type, but a type of <".concat(typeof t,"> was provided."))}else(0,l.Z)("Failed to execute setCustomAttribute.\nName must be a string type, but a type of <".concat(typeof e,"> was provided."))},h.setUserId=function(e){if("string"==typeof e||null===e)return b("enduser.id",e,"setUserId",!0);(0,l.Z)("Failed to execute setUserId.\nNon-null value must be a string type, but a type of <".concat(typeof e,"> was provided."))},h.setApplicationVersion=function(e){if("string"==typeof e||null===e)return b("application.version",e,"setApplicationVersion",!1);(0,l.Z)("Failed to execute setApplicationVersion. Expected <String | null>, but got <".concat(typeof e,">."))},h.start=e=>{try{const t=e?"defined":"undefined";(0,o.p)(f.xS,["API/start/".concat(t,"/called")],void 0,n.D.metrics,p);const r=Object.values(n.D);if(void 0===e)e=r;else{if((e=Array.isArray(e)&&e.length?e:[e]).some((e=>!r.includes(e))))return(0,l.Z)("Invalid feature name supplied. Acceptable feature names are: ".concat(r));e.includes(n.D.pageViewEvent)||e.push(n.D.pageViewEvent)}e.forEach((e=>{p.emit("".concat(e,"-opt-in"))}))}catch(e){(0,l.Z)("An unexpected issue occurred",e)}},h.recordReplay=function(){(0,o.p)(f.xS,["API/recordReplay/called"],void 0,n.D.metrics,p),(0,o.p)("recordReplay",[],void 0,n.D.sessionReplay,p)},h.pauseReplay=function(){(0,o.p)(f.xS,["API/pauseReplay/called"],void 0,n.D.metrics,p),(0,o.p)("pauseReplay",[],void 0,n.D.sessionReplay,p)},h.interaction=function(){return(new y).get()};var A=y.prototype={createTracer:function(e,t){var r={},i=this,a="function"==typeof t;return(0,o.p)(f.xS,["API/createTracer/called"],void 0,n.D.metrics,p),(0,o.p)(v+"tracer",[(0,s.z)(),e,r],i,n.D.spa,p),function(){if(g.emit((a?"":"no-")+"fn-start",[(0,s.z)(),i,a],r),a)try{return t.apply(this,arguments)}catch(e){throw g.emit("fn-err",[arguments,this,e],r),e}finally{g.emit("fn-end",[(0,s.z)()],r)}}}};function w(e,t,r,i){return function(){return(0,o.p)(f.xS,["API/"+t+"/called"],void 0,n.D.metrics,p),i&&(0,o.p)(e+t,[(0,s.z)(),...arguments],r?null:this,i,p),r?void 0:this}}function x(){r.e(111).then(r.bind(r,7438)).then((t=>{let{setAPI:r}=t;r(e),(0,c.L)(e,"api")})).catch((()=>(0,l.Z)("Downloading runtime APIs failed...")))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{A[e]=w(v,e,void 0,n.D.spa)})),h.noticeError=function(e,t){"string"==typeof e&&(e=new Error(e)),(0,o.p)(f.xS,["API/noticeError/called"],void 0,n.D.metrics,p),(0,o.p)("err",[e,(0,s.z)(),!1,t],void 0,n.D.jserrors,p)},d.il?(0,u.b2)((()=>x()),!0):x(),h}(e.agentIdentifier,y)),void 0===e.exposed&&(e.exposed=_),v=!0}},1926:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},3325:(e,t,r)=>{"use strict";r.d(t,{D:()=>n,p:()=>i});const n={ajax:"ajax",jserrors:"jserrors",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",spa:"spa"},i={[n.pageViewEvent]:1,[n.pageViewTiming]:2,[n.metrics]:3,[n.jserrors]:4,[n.ajax]:5,[n.sessionTrace]:6,[n.pageAction]:7,[n.spa]:8,[n.sessionReplay]:9}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>({111:"nr-spa",164:"nr-spa-compressor",433:"nr-spa-recorder"}[e]+"-1.248.0.min.js"),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.248.0.PROD:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d<u.length;d++){var l=u[d];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+o){s=l;break}}s||(c=!0,(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+"/")&&(s.crossOrigin="anonymous"),s.integrity=i.sriHashes[a],s.crossOrigin="anonymous"),e[r]=[n];var f=(t,n)=>{s.onerror=s.onload=null,clearTimeout(h);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},h=setTimeout(f.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=f.bind(null,s.onerror),s.onload=f.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="http://web.archive.org/web/20231210063606/https://js-agent.newrelic.com/",i.sriHashes={111:"sha512-ZwkW/wLO65ZnBcPIJO2VJVqTtRyXCRZiimLidZm1CYZfRiDwnchDLGFiEKDNkhfy/b1cgD3SElt5YjVudzleDQ=="},(()=>{var e={801:0,92:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u<a.length;u++)o=a[u],i.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=self["webpackChunk:NRBA-1.248.0.PROD"]=self["webpackChunk:NRBA-1.248.0.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(1926);var e=i(50);class t{addPageAction(t,r){(0,e.Z)("Call to agent api addPageAction failed. The page action feature is not currently initialized.")}setPageViewName(t,r){(0,e.Z)("Call to agent api setPageViewName failed. The page view feature is not currently initialized.")}setCustomAttribute(t,r,n){(0,e.Z)("Call to agent api setCustomAttribute failed. The js errors feature is not currently initialized.")}noticeError(t,r){(0,e.Z)("Call to agent api noticeError failed. The js errors feature is not currently initialized.")}setUserId(t){(0,e.Z)("Call to agent api setUserId failed. The js errors feature is not currently initialized.")}setApplicationVersion(t){(0,e.Z)("Call to agent api setApplicationVersion failed. The agent is not currently initialized.")}setErrorHandler(t){(0,e.Z)("Call to agent api setErrorHandler failed. The js errors feature is not currently initialized.")}finished(t){(0,e.Z)("Call to agent api finished failed. The page action feature is not currently initialized.")}addRelease(t,r){(0,e.Z)("Call to agent api addRelease failed. The js errors feature is not currently initialized.")}start(t){(0,e.Z)("Call to agent api addRelease failed. The agent is not currently initialized.")}recordReplay(){(0,e.Z)("Call to agent api recordReplay failed. The agent is not currently initialized.")}pauseReplay(){(0,e.Z)("Call to agent api pauseReplay failed. The agent is not currently initialized.")}}var r=i(3325),n=i(234);const o=Object.values(r.D);function a(e){const t={};return o.forEach((r=>{t[r]=function(e,t){return!1!==(0,n.Mt)(t,"".concat(e,".enabled"))}(r,e)})),t}var s=i(7530);var c=i(8e3),u=i(5938),d=i(3960),l=i(385);class f extends u.W{constructor(e,t,r){let i=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];super(e,t,r),this.auto=i,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===(0,n.Mt)(this.agentIdentifier,"".concat(this.featureName,".autoStart"))&&(this.auto=!1),this.auto&&(0,c.R)(e,r)}importAggregator(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(this.featAggregate)return;if(!this.auto)return void this.ee.on("".concat(this.featureName,"-opt-in"),(()=>{(0,c.R)(this.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator()}));const r=l.il&&!0===(0,n.Mt)(this.agentIdentifier,"privacy.cookies_enabled");let o;this.onAggregateImported=new Promise((e=>{o=e}));const a=async()=>{let n;try{if(r){const{setupAgentSession:e}=await i.e(111).then(i.bind(i,3228));n=e(this.agentIdentifier)}}catch(t){(0,e.Z)("A problem occurred when starting up session manager. This page will not start or extend any session.",t)}try{if(!this.shouldImportAgg(this.featureName,n))return(0,c.L)(this.agentIdentifier,this.featureName),void o(!1);const{lazyFeatureLoader:e}=await i.e(111).then(i.bind(i,8582)),{Aggregate:r}=await e(this.featureName,"aggregate");this.featAggregate=new r(this.agentIdentifier,this.aggregator,t),o(!0)}catch(t){(0,e.Z)("Downloading and initializing ".concat(this.featureName," failed..."),t),this.abortHandler?.(),(0,c.L)(this.agentIdentifier,this.featureName),o(!1)}};l.il?(0,d.b2)((()=>a()),!0):a()}shouldImportAgg(e,t){return e!==r.D.sessionReplay||!!n.Yu.MO&&(!1!==(0,n.Mt)(this.agentIdentifier,"session_trace.enabled")&&(!!t?.isNew||!!t?.state.sessionReplayMode))}}var h=i(7633);class p extends f{static featureName=h.t;constructor(e,t){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];super(e,t,h.t,r),this.importAggregator()}}var g=i(1117),m=i(1284);class v extends g.w{constructor(e){super(e),this.aggregatedData={}}store(e,t,r,n,i){var o=this.getBucket(e,t,r,i);return o.metrics=function(e,t){t||(t={count:0});return t.count+=1,(0,m.D)(e,(function(e,r){t[e]=b(r,t[e])})),t}(n,o.metrics),o}merge(e,t,r,n,i){var o=this.getBucket(e,t,n,i);if(o.metrics){var a=o.metrics;a.count+=r.count,(0,m.D)(r,(function(e,t){if("count"!==e){var n=a[e],i=r[e];i&&!i.c?a[e]=b(i.t,n):a[e]=function(e,t){if(!t)return e;t.c||(t=y(t.t));return t.min=Math.min(e.min,t.min),t.max=Math.max(e.max,t.max),t.t+=e.t,t.sos+=e.sos,t.c+=e.c,t}(i,a[e])}}))}else o.metrics=r}storeMetric(e,t,r,n){var i=this.getBucket(e,t,r);return i.stats=b(n,i.stats),i}getBucket(e,t,r,n){this.aggregatedData[e]||(this.aggregatedData[e]={});var i=this.aggregatedData[e][t];return i||(i=this.aggregatedData[e][t]={params:r||{}},n&&(i.custom=n)),i}get(e,t){return t?this.aggregatedData[e]&&this.aggregatedData[e][t]:this.aggregatedData[e]}take(e){for(var t={},r="",n=!1,i=0;i<e.length;i++)t[r=e[i]]=A(this.aggregatedData[r]),t[r].length&&(n=!0),delete this.aggregatedData[r];return n?t:null}}function b(e,t){return null==e?function(e){e?e.c++:e={c:1};return e}(t):t?(t.c||(t=y(t.t)),t.c+=1,t.t+=e,t.sos+=e*e,e>t.max&&(t.max=e),e<t.min&&(t.min=e),t):{t:e}}function y(e){return{t:e,min:e,max:e,sos:e*e,c:1}}function A(e){return"object"!=typeof e?[]:(0,m.D)(e,w)}function w(e,t){return t}var x=i(8632),E=i(4402),_=i(4351);var T=i(5546),S=i(7956),D=i(3239),j=i(7894),N=i(9251);class C extends f{static featureName=N.t;constructor(e,t){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];super(e,t,N.t,r),l.il&&((0,S.N)((()=>(0,T.p)("docHidden",[(0,j.z)()],void 0,N.t,this.ee)),!0),(0,D.bP)("pagehide",(()=>(0,T.p)("winPagehide",[(0,j.z)()],void 0,N.t,this.ee))),this.importAggregator())}}var R=i(3081);class O extends f{static featureName=R.t9;constructor(e,t){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];super(e,t,R.t9,r),this.importAggregator()}}var P=i(6660);class I{constructor(e,t,r,n){this.name="UncaughtError",this.message=e,this.sourceURL=t,this.line=r,this.column=n}}class k extends f{static featureName=P.t;#e=new Set;constructor(e,t){let n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];super(e,t,P.t,n);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("fn-err",((e,t,n)=>{this.abortHandler&&!this.#e.has(n)&&(this.#e.add(n),(0,T.p)("err",[this.#t(n),(0,j.z)()],void 0,r.D.jserrors,this.ee))})),this.ee.on("internal-error",(e=>{this.abortHandler&&(0,T.p)("ierr",[this.#t(e),(0,j.z)(),!0],void 0,r.D.jserrors,this.ee)})),l._A.addEventListener("unhandledrejection",(e=>{this.abortHandler&&(0,T.p)("err",[this.#r(e),(0,j.z)(),!1,{unhandledPromiseRejection:1}],void 0,r.D.jserrors,this.ee)}),(0,D.m$)(!1,this.removeOnAbort?.signal)),l._A.addEventListener("error",(e=>{this.abortHandler&&(this.#e.has(e.error)?this.#e.delete(e.error):(0,T.p)("err",[this.#n(e),(0,j.z)()],void 0,r.D.jserrors,this.ee))}),(0,D.m$)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#i,this.importAggregator()}#i(){this.removeOnAbort?.abort(),this.#e.clear(),this.abortHandler=void 0}#t(e){return e instanceof Error?e:void 0!==e?.message?new I(e.message,e.filename||e.sourceURL,e.lineno||e.line,e.colno||e.col):new I("string"==typeof e?e:(0,_.P)(e))}#r(e){let t="Unhandled Promise Rejection: ";if(e?.reason instanceof Error)try{return e.reason.message=t+e.reason.message,e.reason}catch(t){return e.reason}if(void 0===e.reason)return new I(t);const r=this.#t(e.reason);return r.message=t+r.message,r}#n(e){return e.error instanceof Error?e.error:new I(e.message,e.filename,e.lineno,e.colno)}}var H=i(2210);let z=1;const L="nr@id";function M(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===l._A?0:(0,H.X)(e,L,(function(){return z++}))}function F(e){if("string"==typeof e&&e.length)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,_.P)(e).length}catch(e){return}}}var B=i(1214),U=i(7243);class Z{constructor(e){this.agentIdentifier=e}generateTracePayload(e){if(!this.shouldGenerateTrace(e))return null;var t=(0,n.DL)(this.agentIdentifier);if(!t)return null;var r=(t.accountID||"").toString()||null,i=(t.agentID||"").toString()||null,o=(t.trustKey||"").toString()||null;if(!r||!i)return null;var a=(0,E.M)(),s=(0,E.Ht)(),c=Date.now(),u={spanId:a,traceId:s,timestamp:c};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(u.traceContextParentHeader=this.generateTraceContextParentHeader(a,s),u.traceContextStateHeader=this.generateTraceContextStateHeader(a,c,r,i,o)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(u.newrelicHeader=this.generateTraceHeader(a,s,c,r,i,o)),u}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,o){if(!("function"==typeof l._A?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return o&&n!==o&&(a.d.tk=o),btoa((0,_.P)(a))}shouldGenerateTrace(e){return this.isDtEnabled()&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1,r={};if((0,n.Mt)(this.agentIdentifier,"distributed_tracing")&&(r=(0,n.P_)(this.agentIdentifier).distributed_tracing),e.sameOrigin)t=!0;else if(r.allowed_origins instanceof Array)for(var i=0;i<r.allowed_origins.length;i++){var o=(0,U.e)(r.allowed_origins[i]);if(e.hostname===o.hostname&&e.protocol===o.protocol&&e.port===o.port){t=!0;break}}return t}isDtEnabled(){var e=(0,n.Mt)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.enabled}excludeNewrelicHeader(){var e=(0,n.Mt)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=(0,n.Mt)(this.agentIdentifier,"distributed_tracing");return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=(0,n.Mt)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.cors_use_tracecontext_headers}}var V=i(7825),q=["load","error","abort","timeout"],G=q.length,W=n.Yu.REQ,X=n.Yu.XHR;class Y extends f{static featureName=V.t;constructor(e,t){let i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(super(e,t,V.t,i),(0,n.OP)(e).xhrWrappable){this.dt=new Z(e),this.handler=(e,t,r,n)=>(0,T.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};l._A?.performance?.getEntriesByType("resource").forEach((t=>{if(t.initiatorType in e&&0!==t.responseStatus){const n={status:t.responseStatus},i={rxSize:t.transferSize,duration:Math.floor(t.duration),cbTime:0};K(n,t.name),this.handler("xhr",[n,i,t.startTime,t.responseEnd,e[t.initiatorType]],void 0,r.D.ajax)}}))}catch(e){}(0,B.u5)(this.ee),(0,B.Kf)(this.ee),function(e,t,i,o){function a(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=x,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},e.addEventListener("load",(function(r){E(t,e)}),(0,D.m$)(!1)),l.IF||e.addEventListener("progress",(function(e){t.lastSize=e.loaded}),(0,D.m$)(!1))}function s(e){this.params={method:e[0]},K(this,e[1]),this.metrics={}}function c(t,r){var i=(0,n.DL)(e);i.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",i.xpid);var a=o.generateTracePayload(this.parsedOrigin);if(a){var s=!1;a.newrelicHeader&&(r.setRequestHeader("newrelic",a.newrelicHeader),s=!0),a.traceContextParentHeader&&(r.setRequestHeader("traceparent",a.traceContextParentHeader),a.traceContextStateHeader&&r.setRequestHeader("tracestate",a.traceContextStateHeader),s=!0),s&&(this.dt=a)}}function u(e,r){var n=this.metrics,i=e[0],o=this;if(n&&i){var a=F(i);a&&(n.txSize=a)}this.startTime=(0,j.z)(),this.body=i,this.listener=function(e){try{"abort"!==e.type||o.loadCaptureCalled||(o.params.aborted=!0),("load"!==e.type||o.called===o.totalCbs&&(o.onloadCalled||"function"!=typeof r.onload)&&"function"==typeof o.end)&&o.end(r)}catch(e){try{t.emit("internal-error",[e])}catch(e){}}};for(var s=0;s<G;s++)r.addEventListener(q[s],this.listener,(0,D.m$)(!1))}function d(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof r.onload||"function"!=typeof this.end||this.end(r)}function f(e,t){var r=""+M(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function h(e,t){var r=""+M(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function p(){this.endTime=(0,j.z)()}function g(e,r){r instanceof X&&"load"===e[0]&&t.emit("xhr-load-added",[e[1],e[2]],r)}function m(e,r){r instanceof X&&"load"===e[0]&&t.emit("xhr-load-removed",[e[1],e[2]],r)}function v(e,t,r){t instanceof X&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,j.z)()))}function b(e,r){this.xhrCbStart&&t.emit("xhr-cb-time",[(0,j.z)()-this.xhrCbStart,this.onload,r],r)}function y(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&l.il&&(t=""+l._A.location.href):e[0]&&e[0].url?t=e[0].url:l._A?.URL&&e[0]&&e[0]instanceof URL?t=e[0].href:"function"==typeof e[0].toString&&(t=e[0].toString()),"string"==typeof t&&0!==t.length){t&&(this.parsedOrigin=(0,U.e)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var n=o.generateTracePayload(this.parsedOrigin);if(n&&(n.newrelicHeader||n.traceContextParentHeader))if(e[0]&&e[0].headers)s(e[0].headers,n)&&(this.dt=n);else{var i={};for(var a in r)i[a]=r[a];i.headers=new Headers(r.headers||{}),s(i.headers,n)&&(this.dt=n),e.length>1?e[1]=i:e.push(i)}}function s(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function A(e,t){this.params={},this.metrics={},this.startTime=(0,j.z)(),this.dt=t,e.length>=1&&(this.target=e[0]),e.length>=2&&(this.opts=e[1]);var r,n=this.opts||{},i=this.target;"string"==typeof i?r=i:"object"==typeof i&&i instanceof W?r=i.url:l._A?.URL&&"object"==typeof i&&i instanceof URL&&(r=i.href),K(this,r);var o=(""+(i&&i instanceof W&&i.method||n.method||"GET")).toUpperCase();this.params.method=o,this.body=n.body,this.txSize=F(n.body)||0}function w(e,t){var n;this.endTime=(0,j.z)(),this.params||(this.params={}),this.params.status=t?t.status:0,"string"==typeof this.rxSize&&this.rxSize.length>0&&(n=+this.rxSize);var o={txSize:this.txSize,rxSize:n,duration:(0,j.z)()-this.startTime};i("xhr",[this.params,o,this.startTime,this.endTime,"fetch"],this,r.D.ajax)}function x(e){var t=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(var o=0;o<G;o++)e.removeEventListener(q[o],this.listener,!1);t.aborted||(n.duration=(0,j.z)()-this.startTime,this.loadCaptureCalled||4!==e.readyState?null==t.status&&(t.status=0):E(this,e),n.cbTime=this.cbTime,i("xhr",[t,n,this.startTime,this.endTime,"xhr"],this,r.D.ajax))}}function E(e,t){e.params.status=t.status;var r=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?F(e.response):"text"===r||""===r||void 0===r?F(e.responseText):void 0}(t,e.lastSize);if(r&&(e.metrics.rxSize=r),e.sameOrigin){var n=t.getResponseHeader("X-NewRelic-App-Data");n&&(e.params.cat=n.split(", ").pop())}e.loadCaptureCalled=!0}t.on("new-xhr",a),t.on("open-xhr-start",s),t.on("open-xhr-end",c),t.on("send-xhr-start",u),t.on("xhr-cb-time",d),t.on("xhr-load-added",f),t.on("xhr-load-removed",h),t.on("xhr-resolved",p),t.on("addEventListener-end",g),t.on("removeEventListener-end",m),t.on("fn-end",b),t.on("fetch-before-start",y),t.on("fetch-start",A),t.on("fn-start",v),t.on("fetch-done",w)}(e,this.ee,this.handler,this.dt),this.importAggregator()}}}function K(e,t){var r=(0,U.e)(t),n=e.params||e;n.hostname=r.hostname,n.port=r.port,n.protocol=r.protocol,n.host=r.hostname+":"+r.port,n.pathname=r.pathname,e.parsedOrigin=r,e.sameOrigin=r.sameOrigin}var Q=i(3614);const{BST_RESOURCE:J,RESOURCE:ee,START:te,END:re,FEATURE_NAME:ne,FN_END:ie,FN_START:oe,PUSH_STATE:ae}=Q;var se=i(7144);class ce extends f{static featureName=se.t;constructor(e,t){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];super(e,t,se.t,r),this.importAggregator()}}var ue=i(7836);const{FEATURE_NAME:de,START:le,END:fe,BODY:he,CB_END:pe,JS_TIME:ge,FETCH:me,FN_START:ve,CB_START:be,FN_END:ye}=ue;var Ae=i(4649);class we extends f{static featureName=Ae.t;constructor(e,t){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];super(e,t,Ae.t,r),this.importAggregator()}}new class extends t{constructor(t){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(0,E.ky)(16);super(),l._A?(this.agentIdentifier=r,this.sharedAggregator=new v({agentIdentifier:this.agentIdentifier}),this.features={},(0,x.h5)(r,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(p),(0,s.j)(this,t,t.loaderType||"agent"),this.run()):(0,e.Z)("Failed to initial the agent. Could not determine the runtime environment.")}get config(){return{info:(0,n.C5)(this.agentIdentifier),init:(0,n.P_)(this.agentIdentifier),loader_config:(0,n.DL)(this.agentIdentifier),runtime:(0,n.OP)(this.agentIdentifier)}}run(){try{const t=a(this.agentIdentifier),n=[...this.desiredFeatures];n.sort(((e,t)=>r.p[e.featureName]-r.p[t.featureName])),n.forEach((n=>{if(t[n.featureName]||n.featureName===r.D.pageViewEvent){const i=function(e){switch(e){case r.D.ajax:return[r.D.jserrors];case r.D.sessionTrace:return[r.D.ajax,r.D.pageViewEvent];case r.D.sessionReplay:return[r.D.sessionTrace];case r.D.pageViewTiming:return[r.D.pageViewEvent];default:return[]}}(n.featureName);i.every((e=>t[e]))||(0,e.Z)("".concat(n.featureName," is enabled but one or more dependent features has been disabled (").concat((0,_.P)(i),"). This may cause unintended consequences or missing data...")),this.features[n.featureName]=new n(this.agentIdentifier,this.sharedAggregator)}}))}catch(t){(0,e.Z)("Failed to initialize all enabled instrument classes (agent aborted) -",t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,x.fP)();return delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator,r.ee?.abort(),delete r.ee?.get(this.agentIdentifier),!1}}addToTrace(t){(0,e.Z)("Call to agent api addToTrace failed. The session trace feature is not currently initialized.")}setCurrentRouteName(t){(0,e.Z)("Call to agent api setCurrentRouteName failed. The spa feature is not currently initialized.")}interaction(){(0,e.Z)("Call to agent api interaction failed. The spa feature is not currently initialized.")}}({features:[Y,p,C,class extends f{static featureName=ne;constructor(e,t){if(super(e,t,ne,!(arguments.length>2&&void 0!==arguments[2])||arguments[2]),!l.il)return;const n=this.ee;let i;(0,B.QU)(n),this.eventsEE=(0,B.em)(n),this.eventsEE.on(oe,(function(e,t){this.bstStart=(0,j.z)()})),this.eventsEE.on(ie,(function(e,t){(0,T.p)("bst",[e[0],t,this.bstStart,(0,j.z)()],void 0,r.D.sessionTrace,n)})),n.on(ae+te,(function(e){this.time=(0,j.z)(),this.startPath=location.pathname+location.hash})),n.on(ae+re,(function(e){(0,T.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,r.D.sessionTrace,n)}));try{i=new PerformanceObserver((e=>{const t=e.getEntries();(0,T.p)(J,[t],void 0,r.D.sessionTrace,n)})),i.observe({type:ee,buffered:!0})}catch(e){}this.importAggregator({resourceObserver:i})}},ce,O,we,k,class extends f{static featureName=de;constructor(e,t){if(super(e,t,de,!(arguments.length>2&&void 0!==arguments[2])||arguments[2]),!l.il)return;if(!(0,n.OP)(e).xhrWrappable)return;try{this.removeOnAbort=new AbortController}catch(e){}let r,i=0;const o=this.ee.get("tracer"),a=(0,B._L)(this.ee),s=(0,B.Lg)(this.ee),c=(0,B.BV)(this.ee),u=(0,B.Kf)(this.ee),d=this.ee.get("events"),f=(0,B.u5)(this.ee),h=(0,B.QU)(this.ee),p=(0,B.Gm)(this.ee);function g(e,t){h.emit("newURL",[""+window.location,t])}function m(){i++,r=window.location.hash,this[ve]=(0,j.z)()}function v(){i--,window.location.hash!==r&&g(0,!0);var e=(0,j.z)();this[ge]=~~this[ge]+e-this[ve],this[ye]=e}function b(e,t){e.on(t,(function(){this[t]=(0,j.z)()}))}this.ee.on(ve,m),s.on(be,m),a.on(be,m),this.ee.on(ye,v),s.on(pe,v),a.on(pe,v),this.ee.buffer([ve,ye,"xhr-resolved"],this.featureName),d.buffer([ve],this.featureName),c.buffer(["setTimeout"+fe,"clearTimeout"+le,ve],this.featureName),u.buffer([ve,"new-xhr","send-xhr"+le],this.featureName),f.buffer([me+le,me+"-done",me+he+le,me+he+fe],this.featureName),h.buffer(["newURL"],this.featureName),p.buffer([ve],this.featureName),s.buffer(["propagate",be,pe,"executor-err","resolve"+le],this.featureName),o.buffer([ve,"no-"+ve],this.featureName),a.buffer(["new-jsonp","cb-start","jsonp-error","jsonp-end"],this.featureName),b(f,me+le),b(f,me+"-done"),b(a,"new-jsonp"),b(a,"jsonp-end"),b(a,"cb-start"),h.on("pushState-end",g),h.on("replaceState-end",g),window.addEventListener("hashchange",g,(0,D.m$)(!0,this.removeOnAbort?.signal)),window.addEventListener("load",g,(0,D.m$)(!0,this.removeOnAbort?.signal)),window.addEventListener("popstate",(function(){g(0,i>1)}),(0,D.m$)(!0,this.removeOnAbort?.signal)),this.abortHandler=this.#i,this.importAggregator()}#i(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}],loaderType:"spa"})})()})();</script> <meta name="description" content="Book trains to Shrewsbury with Transport for Wales and discover one of England's most picturesque cities. Book your Shrewsbury train tickets here."/> <link rel="canonical" href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/destinations/shrewsbury"/> <meta property="og:url" content="http://web.archive.org/web/20231210063606/https://tfw.wales/places/destinations/shrewsbury"/> <meta property="og:title" content="Visiting Shrewsbury | Transport for Wales"/> <meta property="og:description" content="Transport for Wales | Buy Cheap Train Tickets and Check Train Times"/> <meta property="og:image" content="http://web.archive.org/web/20231210063606im_/https://tfw.wales/sites/default/files/2021-06/transport-for-wales-og-social.jpg"/> <meta name="twitter:title" content="Visiting Shrewsbury | Transport for Wales"/> <meta name="twitter:url" content="http://web.archive.org/web/20231210063606im_/https://tfw.wales/places/destinations/shrewsbury"/> <meta name="MobileOptimized" content="width"/> <meta name="HandheldFriendly" content="true"/> <meta name="viewport" content="width=device-width, initial-scale=1.0"/> <link rel="icon" href="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/tfw-favicon-32x32.png" type="image/png"/> <link rel="alternate" hreflang="en" href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/destinations/shrewsbury"/> <link rel="alternate" hreflang="cy" href="http://web.archive.org/web/20231210063606/https://trc.cymru/lleoedd/cyrchfannau/amwythig"/> <title>Visit Shrewsbury | Train Tickets | TfW</title> <link rel="stylesheet" media="all" href="/web/20231210063606cs_/https://tfw.wales/sites/default/files/css/css_gCydtjtmn1fdFJaC1TH3MSh0HFpsjEBey4pthSFeFow.css?delta=0&amp;language=en&amp;theme=one_domain&amp;include=eJxtT21uwzAIvZAbDrMDWMSmHgk2kSHtcvslajatU_6A3oceD9vMqcKIRkEbxawVuUERHVFu5ptwKxfKZCFpJ8h9XVA-yH33WRBNKATesZmgs7bDpzOTxeJY4BihqBah-ML1He7yn-Bh6Vo6mf03DTjhVxDcdPWY2ZI-qG_gT00q4c7i1CHhclQIlTIjvMjhhzxrwbkn2yVt9ws-zKTCFs9r4_7kbLCTt4VzvlYFW1mxULQne_qk35BKBRs-4B0OwmPHvn0DQricIw"/> <link rel="stylesheet" media="all" href="/web/20231210063606cs_/https://tfw.wales/sites/default/files/css/css_LawvuLjLLHuxkzoq3zNPJGrULeu4syzBbf40n2fprPk.css?delta=1&amp;language=en&amp;theme=one_domain&amp;include=eJxtT21uwzAIvZAbDrMDWMSmHgk2kSHtcvslajatU_6A3oceD9vMqcKIRkEbxawVuUERHVFu5ptwKxfKZCFpJ8h9XVA-yH33WRBNKATesZmgs7bDpzOTxeJY4BihqBah-ML1He7yn-Bh6Vo6mf03DTjhVxDcdPWY2ZI-qG_gT00q4c7i1CHhclQIlTIjvMjhhzxrwbkn2yVt9ws-zKTCFs9r4_7kbLCTt4VzvlYFW1mxULQne_qk35BKBRs-4B0OwmPHvn0DQricIw"/> <link rel="stylesheet" media="print" href="/web/20231210063606cs_/https://tfw.wales/sites/default/files/css/css_EFkMexotDh4ZqVb31MBR7WgcRwnhvj-H-ik_d65EChQ.css?delta=2&amp;language=en&amp;theme=one_domain&amp;include=eJxtT21uwzAIvZAbDrMDWMSmHgk2kSHtcvslajatU_6A3oceD9vMqcKIRkEbxawVuUERHVFu5ptwKxfKZCFpJ8h9XVA-yH33WRBNKATesZmgs7bDpzOTxeJY4BihqBah-ML1He7yn-Bh6Vo6mf03DTjhVxDcdPWY2ZI-qG_gT00q4c7i1CHhclQIlTIjvMjhhzxrwbkn2yVt9ws-zKTCFs9r4_7kbLCTt4VzvlYFW1mxULQne_qk35BKBRs-4B0OwmPHvn0DQricIw"/> <link rel="stylesheet" media="all" href="http://web.archive.org/web/20231210063606cs_/https://dk5vcnqsuunkv.cloudfront.net/dist/build/tailwind.css"/> </head> <body class="page--destinations-attractions"> <a href="#main-content" class="visually-hidden focusable"> Skip to main content </a> <noscript><iframe src="http://web.archive.org/web/20231210063606if_/https://www.googletagmanager.com/ns.html?id=GTM-T34X6QX" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <div class="dialog-off-canvas-main-canvas" data-off-canvas-main-canvas> <header id="siteHeader" class="site-header"> <div class="mdc-layout-grid site-header__compass-bar"> <div class="mdc-layout-grid__inner"> <div class="mdc-layout-grid__cell--span-12 site-header__nav-inner"> <a class="mobile-nav-toggle" href="#"> <object style="width: 20px; height: 16px;" tabindex="-1" type="image/svg+xml" data="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/hamburger.svg"> <img src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/hamburger.svg" alt=""> </object> <span style="vertical-align: text-bottom;">Menu</span> </a> <div class="site-header__logo-container w-[65px]"> <a href="/web/20231210063606/https://tfw.wales/"><img class="site-header__logo" style="width: 59px; height: 59px" src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/logo.svg" alt="Transport for Wales Logo"/></a> </div> <nav role="navigation" aria-labelledby="block-mainmenu-menu" id="block-mainmenu" class="site-header__filter-wrapper flex flex-auto !justify-between md:ml-[10px]"> <h2 class="visually-hidden" id="block-mainmenu-menu">Main Menu</h2> <div class="mobile-nav-controls"> <a href="/web/20231210063606/https://tfw.wales/search"> <object tabindex="-1" type="image/svg+xml" data="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/icon-search.svg"> <img alt="Search" src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/icon-search.svg"> </object> </a> <a class="mobile-nav-close" href="#"> <object tabindex="-1" type="image/svg+xml" data="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/icon-close.svg"> <img src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/icon-close.svg"> </object> </a> </div> <ul class="site-header__nav-bar-filter !-mt-[10px] !-ml-[10px]"> <li class="!ml-[10px] !mt-[10px]"> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/plan-a-journey" data-drupal-link-system-path="node/33251">Plan a journey</a> </li> <li class="has-children !ml-[10px] !mt-[10px]"> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel" data-drupal-link-system-path="node/28526">Ways to travel</a> <div class="site-header__nav-bar-filter !-mt-[10px] !-ml-[10px] site-header__mega-menu"> <ul class="w-full"> <li class="has-children "> <span>Ways to travel</span> <ul class="child-nav-cols-2"> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/rail" title="Rail" data-drupal-link-system-path="node/28871">Rail</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/cycling" data-drupal-link-system-path="node/28561">Cycling</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/bus" data-drupal-link-system-path="node/28566">Bus</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/walking-and-wheeling" title="Walking" data-drupal-link-system-path="node/29531">Walking</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/road" title="Travel by Road" data-drupal-link-system-path="node/28551">Road</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/water" data-drupal-link-system-path="node/28581">Water</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/air" data-drupal-link-system-path="node/28591">Air</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/bus/fflecsi" data-drupal-link-system-path="node/28306">fflecsi</a> </li> </ul> </li> </ul> </div> </li> <li class="has-children !ml-[10px] !mt-[10px]"> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for" data-drupal-link-system-path="node/28531">Info for...</a> <div class="site-header__nav-bar-filter !-mt-[10px] !-ml-[10px] site-header__mega-menu"> <ul class="w-full"> <li class="has-children "> <span>Info for...</span> <ul class="child-nav-cols-4"> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/passengers/travel-safer" data-drupal-link-system-path="node/28281">Travel Safer</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/passengers" data-drupal-link-system-path="node/28661">Passengers</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/young-travellers" data-drupal-link-system-path="node/28666">Young travellers</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/passengers/accessible-travel" data-drupal-link-system-path="node/29526">Accessible travel</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/over-60s" data-drupal-link-system-path="node/28671">Over 60s</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/kids-and-schools" data-drupal-link-system-path="node/28676">Kids and schools</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/communities" data-drupal-link-system-path="node/28681">Communities</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/job-hunters" data-drupal-link-system-path="node/28686">Job hunters</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/business" data-drupal-link-system-path="node/28691">Businesses</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/visitors-and-tourists" data-drupal-link-system-path="node/28696">Visitors and tourists</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/government-and-councils" data-drupal-link-system-path="node/28701">Government and councils</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/suppliers-and-partners" data-drupal-link-system-path="node/28711">Suppliers and partners</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/press-and-media" data-drupal-link-system-path="node/29316">Press and media</a> </li> </ul> </li> </ul> </div> </li> <li class="has-children !ml-[10px] !mt-[10px]"> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/service-status" data-drupal-link-system-path="node/28536">Service status</a> <div class="site-header__nav-bar-filter !-mt-[10px] !-ml-[10px] site-header__mega-menu"> <ul class="w-full"> <li class="has-children "> <span title="Service status">Service status</span> <ul class="child-nav-cols-2"> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/service-status/live-arrivals-and-departures" data-drupal-link-system-path="node/2341">Live arrivals and departures</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/service-status/live-route-status" data-drupal-link-system-path="node/116">Live route status</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/check-your-journey" data-drupal-link-system-path="node/29556">Check your journey</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/service-status/capacity-checker" data-drupal-link-system-path="node/19301">Capacity Checker</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/service-status/timetables" data-drupal-link-system-path="node/16506">Timetables</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/projects/metro/service-changes" data-drupal-link-system-path="node/19291">Metro: changes to train services</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/service-status/planned-improvement-works" data-drupal-link-system-path="node/111">Planned improvement works</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/service-status/weekend-travel-marches" data-drupal-link-system-path="node/39791">Weekend travel on the Marches</a> </li> </ul> </li> </ul> </div> </li> <li class="has-children !ml-[10px] !mt-[10px]"> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/help-and-contact" data-drupal-link-system-path="node/51791">Help and contact</a> <div class="site-header__nav-bar-filter !-mt-[10px] !-ml-[10px] site-header__mega-menu"> <ul class="w-full"> <li class="has-children "> <span title="Help and contact ">Help and contact </span> <ul class="child-nav-cols-2"> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/help-and-contact/rail" data-drupal-link-system-path="node/51961">Rail help</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/help-and-contact/bus" data-drupal-link-system-path="node/51956">Bus help</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/help-and-contact/concessionary" data-drupal-link-system-path="node/35486">Concessionary card help</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/help-and-contact/recruitment" data-drupal-link-system-path="node/35496">Recruitment help</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/help-and-contact/rail/delay-repay" data-drupal-link-system-path="node/821">Delay Repay</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/help-and-contact/get-in-touch" data-drupal-link-system-path="node/50026">Contact us</a> </li> </ul> </li> </ul> </div> </li> <li class="has-children !ml-[10px] !mt-[10px]"> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us" data-drupal-link-system-path="node/28546">About</a> <div class="site-header__nav-bar-filter !-mt-[10px] !-ml-[10px] site-header__mega-menu"> <ul class="w-full"> <li class="has-children "> <span>About</span> <ul class="child-nav-cols-3"> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us/our-story" data-drupal-link-system-path="node/1606">Our story</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us/our-culture" data-drupal-link-system-path="node/29261">Our culture</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us/transparency" data-drupal-link-system-path="node/29281">Transparency</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us/sustainable-development" data-drupal-link-system-path="node/32041">Sustainability</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/careers" data-drupal-link-system-path="node/27061">Careers</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us/our-team" data-drupal-link-system-path="node/27086">Our team</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us/advertising-filming-and-partnerships" data-drupal-link-system-path="node/856">Advertising with us</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us/whats-happening" data-drupal-link-system-path="node/27131">What&#039;s happening</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/press-and-media" data-drupal-link-system-path="node/29316">Latest news</a> </li> </ul> </li> </ul> </div> </li> <li class="has-children !ml-[10px] !mt-[10px]"> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places" data-drupal-link-system-path="node/29241">Places</a> <div class="site-header__nav-bar-filter !-mt-[10px] !-ml-[10px] site-header__mega-menu"> <ul class="w-full"> <li class="has-children "> <span>Places</span> <ul class="child-nav-cols-2"> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/attractions" data-drupal-link-system-path="node/45836">Attractions</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/destinations" data-drupal-link-system-path="node/39676">Destinations</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/events" data-drupal-link-system-path="node/38621">Events</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/popular-routes" data-drupal-link-system-path="node/17486">Popular routes</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/stations" data-drupal-link-system-path="node/26">Stations</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/our-network-map" data-drupal-link-system-path="node/171">Our network map</a> </li> </ul> </li> </ul> </div> </li> <li class="has-children !ml-[10px] !mt-[10px]"> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/projects" data-drupal-link-system-path="node/29246">Projects</a> <div class="site-header__nav-bar-filter !-mt-[10px] !-ml-[10px] site-header__mega-menu"> <ul class="w-full"> <li class="has-children "> <span>Projects</span> <ul class="child-nav-cols-1"> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/projects/metro" data-drupal-link-system-path="node/38526">Metro</a> </li> </ul> </li> </ul> </div> </li> </ul> <div class="more-menu ml-4" tabindex="0"> <a class="more-menu__nav-toggle" href="#" tabindex="-1"> <object style="width: 20px; height: 16px;" tabindex="-1" type="image/svg+xml" data="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/hamburger.svg"> <img src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/hamburger.svg" alt=""> </object> <span style="vertical-align: text-bottom;">More</span> </a> <ul class="site-header__nav-bar-filter !-mt-[10px] !-ml-[10px]"> <li class="!ml-[10px] !mt-[10px]"> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/plan-a-journey" data-drupal-link-system-path="node/33251">Plan a journey</a> </li> <li class="has-children !ml-[10px] !mt-[10px]"> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel" data-drupal-link-system-path="node/28526">Ways to travel</a> <div class="site-header__nav-bar-filter !-mt-[10px] !-ml-[10px] site-header__mega-menu"> <ul class="w-full"> <li class="has-children "> <span>Ways to travel</span> <ul class="child-nav-cols-2"> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/rail" title="Rail" data-drupal-link-system-path="node/28871">Rail</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/cycling" data-drupal-link-system-path="node/28561">Cycling</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/bus" data-drupal-link-system-path="node/28566">Bus</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/walking-and-wheeling" title="Walking" data-drupal-link-system-path="node/29531">Walking</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/road" title="Travel by Road" data-drupal-link-system-path="node/28551">Road</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/water" data-drupal-link-system-path="node/28581">Water</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/air" data-drupal-link-system-path="node/28591">Air</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/bus/fflecsi" data-drupal-link-system-path="node/28306">fflecsi</a> </li> </ul> </li> </ul> </div> </li> <li class="has-children !ml-[10px] !mt-[10px]"> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for" data-drupal-link-system-path="node/28531">Info for...</a> <div class="site-header__nav-bar-filter !-mt-[10px] !-ml-[10px] site-header__mega-menu"> <ul class="w-full"> <li class="has-children "> <span>Info for...</span> <ul class="child-nav-cols-4"> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/passengers/travel-safer" data-drupal-link-system-path="node/28281">Travel Safer</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/passengers" data-drupal-link-system-path="node/28661">Passengers</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/young-travellers" data-drupal-link-system-path="node/28666">Young travellers</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/passengers/accessible-travel" data-drupal-link-system-path="node/29526">Accessible travel</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/over-60s" data-drupal-link-system-path="node/28671">Over 60s</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/kids-and-schools" data-drupal-link-system-path="node/28676">Kids and schools</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/communities" data-drupal-link-system-path="node/28681">Communities</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/job-hunters" data-drupal-link-system-path="node/28686">Job hunters</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/business" data-drupal-link-system-path="node/28691">Businesses</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/visitors-and-tourists" data-drupal-link-system-path="node/28696">Visitors and tourists</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/government-and-councils" data-drupal-link-system-path="node/28701">Government and councils</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/suppliers-and-partners" data-drupal-link-system-path="node/28711">Suppliers and partners</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/press-and-media" data-drupal-link-system-path="node/29316">Press and media</a> </li> </ul> </li> </ul> </div> </li> <li class="has-children !ml-[10px] !mt-[10px]"> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/service-status" data-drupal-link-system-path="node/28536">Service status</a> <div class="site-header__nav-bar-filter !-mt-[10px] !-ml-[10px] site-header__mega-menu"> <ul class="w-full"> <li class="has-children "> <span title="Service status">Service status</span> <ul class="child-nav-cols-2"> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/service-status/live-arrivals-and-departures" data-drupal-link-system-path="node/2341">Live arrivals and departures</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/service-status/live-route-status" data-drupal-link-system-path="node/116">Live route status</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/check-your-journey" data-drupal-link-system-path="node/29556">Check your journey</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/service-status/capacity-checker" data-drupal-link-system-path="node/19301">Capacity Checker</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/service-status/timetables" data-drupal-link-system-path="node/16506">Timetables</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/projects/metro/service-changes" data-drupal-link-system-path="node/19291">Metro: changes to train services</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/service-status/planned-improvement-works" data-drupal-link-system-path="node/111">Planned improvement works</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/service-status/weekend-travel-marches" data-drupal-link-system-path="node/39791">Weekend travel on the Marches</a> </li> </ul> </li> </ul> </div> </li> <li class="has-children !ml-[10px] !mt-[10px]"> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/help-and-contact" data-drupal-link-system-path="node/51791">Help and contact</a> <div class="site-header__nav-bar-filter !-mt-[10px] !-ml-[10px] site-header__mega-menu"> <ul class="w-full"> <li class="has-children "> <span title="Help and contact ">Help and contact </span> <ul class="child-nav-cols-2"> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/help-and-contact/rail" data-drupal-link-system-path="node/51961">Rail help</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/help-and-contact/bus" data-drupal-link-system-path="node/51956">Bus help</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/help-and-contact/concessionary" data-drupal-link-system-path="node/35486">Concessionary card help</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/help-and-contact/recruitment" data-drupal-link-system-path="node/35496">Recruitment help</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/help-and-contact/rail/delay-repay" data-drupal-link-system-path="node/821">Delay Repay</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/help-and-contact/get-in-touch" data-drupal-link-system-path="node/50026">Contact us</a> </li> </ul> </li> </ul> </div> </li> <li class="has-children !ml-[10px] !mt-[10px]"> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us" data-drupal-link-system-path="node/28546">About</a> <div class="site-header__nav-bar-filter !-mt-[10px] !-ml-[10px] site-header__mega-menu"> <ul class="w-full"> <li class="has-children "> <span>About</span> <ul class="child-nav-cols-3"> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us/our-story" data-drupal-link-system-path="node/1606">Our story</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us/our-culture" data-drupal-link-system-path="node/29261">Our culture</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us/transparency" data-drupal-link-system-path="node/29281">Transparency</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us/sustainable-development" data-drupal-link-system-path="node/32041">Sustainability</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/careers" data-drupal-link-system-path="node/27061">Careers</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us/our-team" data-drupal-link-system-path="node/27086">Our team</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us/advertising-filming-and-partnerships" data-drupal-link-system-path="node/856">Advertising with us</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us/whats-happening" data-drupal-link-system-path="node/27131">What&#039;s happening</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/press-and-media" data-drupal-link-system-path="node/29316">Latest news</a> </li> </ul> </li> </ul> </div> </li> <li class="has-children !ml-[10px] !mt-[10px]"> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places" data-drupal-link-system-path="node/29241">Places</a> <div class="site-header__nav-bar-filter !-mt-[10px] !-ml-[10px] site-header__mega-menu"> <ul class="w-full"> <li class="has-children "> <span>Places</span> <ul class="child-nav-cols-2"> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/attractions" data-drupal-link-system-path="node/45836">Attractions</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/destinations" data-drupal-link-system-path="node/39676">Destinations</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/events" data-drupal-link-system-path="node/38621">Events</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/popular-routes" data-drupal-link-system-path="node/17486">Popular routes</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/stations" data-drupal-link-system-path="node/26">Stations</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/our-network-map" data-drupal-link-system-path="node/171">Our network map</a> </li> </ul> </li> </ul> </div> </li> <li class="has-children !ml-[10px] !mt-[10px]"> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/projects" data-drupal-link-system-path="node/29246">Projects</a> <div class="site-header__nav-bar-filter !-mt-[10px] !-ml-[10px] site-header__mega-menu"> <ul class="w-full"> <li class="has-children "> <span>Projects</span> <ul class="child-nav-cols-1"> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/projects/metro" data-drupal-link-system-path="node/38526">Metro</a> </li> </ul> </li> </ul> </div> </li> </ul> </div> <div class="site-header__anc-links ml-auto flex-shrink-0"> <div id="block-languageswitcher-1"> <div class="languages"> <a href="http://web.archive.org/web/20231210063606/http://trc.cymru/lleoedd/cyrchfannau/amwythig" class="site-header__language-switcher" data-key="cy">Cymraeg</a> </div> </div> <a aria-label="Your Account" href="http://web.archive.org/web/20231210063606/https://tickets.trc.cymru/#/login-redirect"> <img role="presentation" src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/account-icon-desktop.svg"> </a> </div> <div class="site-header__mobile-anc-links"> <a class="my-account" aria-label="Your Account" href="http://web.archive.org/web/20231210063606/https://tickets.trc.cymru/#/login-redirect"> <span class="my-account-icon"></span> Your account </a> <div id="block-languageswitcher-2"> <div class="languages"> <a href="http://web.archive.org/web/20231210063606/http://trc.cymru/lleoedd/cyrchfannau/amwythig" class="site-header__language-switcher" data-key="cy">Cymraeg</a> </div> </div> </div> </nav> </div> </div> </div> <div> <div id="block-disruptionbanner"> <script type="text/javascript"> window.keo = window.keo || {}; window.keo.pidd = { 'labels': {"read_more":"Read more"} }; </script> <div id="pidd_js" class="disruption-banner is-pidd" v-bind:data-disruption-id="item.id" v-bind:data-retrieved="item.retrieved" v-bind:class="{ 'is-shown': item.heading != null &amp;&amp; !item.isHidden }"> <div class="container"> <div class="disruption disruption--major"> <div> <div class="heading"> <span class="disruption-header" v-text="item.heading"></span> <button type="button" class="bg-transparent border-0 read-more-link"> Read more </button> </div> <div class="read-more" v-html="item.copy"></div> </div> <div class="close" role="button" aria-label="Close"></div> </div> </div> </div> </div> </div> <!-- END IF --> <div class="site-header__banner" style="background-color: #AE1C0F;"> <div class="mdc-layout-grid"> <div class="mdc-layout-grid__inner"> <div class="mdc-layout-grid__cell--span-9-desktop mdc-layout-grid__cell--span-4-phone mdc-layout-grid__cell--span-5-tablet text-container"> <div class="text-inner"> <div class="site-header__category"> <p>Places</p> </div> <h1 class="site-header__title">Visiting Shrewsbury</h1> </div> </div> <div class="mdc-layout-grid__cell--span-3-desktop mdc-layout-grid__cell--span-3-tablet site-header__search-form"> <form action="/web/20231210063606/https://tfw.wales/search" method="get"> <label class="sr-only" for="search">Search</label> <input type="search" id="search" name="search" placeholder="Search..."> <button><img src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/icon-search.svg" alt="Search"></button> </form> </div> </div> </div> </div> <!-- fixme: inline style for colour very temp --> <div class="site-header__floating-nav-container"> <div class="mdc-layout-grid"> <div class="mdc-layout-grid__inner"> <div class="mdc-layout-grid__cell--span-12 site-header__floating-nav-container__outer"> <button class="menu-arrow arrow-left" style="display: none"> <img src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/chevron-left-white.svg" alt="See previous links"> </button> <nav class="site-header__floating-nav"> <ul> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places" data-drupal-link-system-path="node/29241">Places</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/attractions" data-drupal-link-system-path="node/45836">Attractions</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/destinations" data-drupal-link-system-path="node/39676">Destinations</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/events" data-drupal-link-system-path="node/38621">Events</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/things-to-do-in" data-drupal-link-system-path="node/38616">Things to do in...</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/popular-routes" data-drupal-link-system-path="node/17486">Popular routes</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/stations" data-drupal-link-system-path="node/26">Stations</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/our-network-map" data-drupal-link-system-path="node/171">Our network map</a> </li> </ul> </nav> <button class="menu-arrow arrow-right"> <img src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/chevron-right-white.svg" alt="See more links"> </button> <button class="mobile-menu-arrow arrow-down"> <object type="image/svg+xml" data="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/chevron-down-black.svg"> <img src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/chevron-down-black.svg" alt="Click to reveal extra menu items"> </object> </button> </div> </div> </div> </div> </header> <div class="layout-container"> <main role="main"> <a id="main-content" tabindex="-1"></a> <div class="mdc-layout-grid"> <div class="mdc-layout-grid__inner"> <div class="mdc-layout-grid__cell--span-12"> <div class="layout-content"> <div> <div data-drupal-messages-fallback class="hidden"></div><div id="block-cookiesui"> <div id="cookiesjsr"></div> </div> <article data-history-node-id="276" about="https://tfw.wales/places/destinations/shrewsbury"> <div> <div class="layout layout--twocol"> <div class="layout__region layout__region--top"> <div> </div> <div> <nav class="breadcrumb" role="navigation" aria-labelledby="system-breadcrumb"> <h2 id="system-breadcrumb" class="visually-hidden">Breadcrumb</h2> <ol> <li> <a aria-label="Home" href="/web/20231210063606/https://tfw.wales/"> <svg width="16" height="16" viewbox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M14.7389 7.88336L7.90068 1.05016C7.85145 1.00082 7.79296 0.961685 7.72858 0.934981C7.6642 0.908277 7.59519 0.894531 7.52549 0.894531C7.45579 0.894531 7.38677 0.908277 7.32239 0.934981C7.25801 0.961685 7.19953 1.00082 7.15029 1.05016L0.312109 7.88336C0.112891 8.08258 0 8.35318 0 8.63541C0 9.22145 0.476465 9.69791 1.0625 9.69791H1.78301V14.5738C1.78301 14.8676 2.02041 15.105 2.31426 15.105H6.46299V11.3863H8.32236V15.105H12.7367C13.0306 15.105 13.268 14.8676 13.268 14.5738V9.69791H13.9885C14.2707 9.69791 14.5413 9.58668 14.7405 9.3858C15.1539 8.97076 15.1539 8.2984 14.7389 7.88336Z" fill="#003DA6"/> </svg> </a> <svg class="breadcrumb__separator" width="8" height="13" viewbox="0 0 8 13" fill="none" xmlns="http://www.w3.org/2000/svg"> <path fill-rule="evenodd" clip-rule="evenodd" d="M6.57749 0.106119C7.07749 0.339119 7.31749 0.883119 7.11449 1.32112L1.93549 12.4241C1.73149 12.8621 1.16049 13.0281 0.659486 12.7941C0.159486 12.5611 -0.0805143 12.0161 0.123486 11.5781L5.30149 0.476119C5.50549 0.0381192 6.07649 -0.127881 6.57749 0.106119Z" fill="#333"/> </svg> </li> <li> Visiting Shrewsbury </li> </ol> </nav> </div> </div> <div class="layout__region layout__region--first"> <div> <div class="page-block page-block--main-content"> <div> <img src="/web/20231210063606im_/https://tfw.wales/sites/default/files/2018-10/Shrewsbury.jpg" width="1440" height="740" alt="Image of Shrewsbury Church" loading="lazy" typeof="foaf:Image"/></div> <h2 dir="ltr">Tucked in a loop of the River Severn near the Welsh border, this medieval market town is famous for its cobbled streets and Tudor centre.</h2> <p dir="ltr"><span>The town itself is a wonderful mixture of old and new. The picturesque black and white timber-framed buildings, historic landmarks and ancient town walls sit side by side with modern architecture. Just to the south, you鈥檒l find the Shropshire Hills - an area of outstanding natural beauty, known for its picturesque landscape, charming villages and waterways.</span></p> <p dir="ltr"><span>And it鈥檚 easy to get there by rail - Shrewsbury railway station is a hub for trains from Wales, the north west of England and the Midlands.</span></p> <p>聽</p> <h2 dir="ltr"><span>Must see</span></h2> <ul dir="ltr"><li><span><a href="http://web.archive.org/web/20231210063606/https://www.shropshiremuseums.org.uk/shrewsbury-castle/" target="blank">Shrewsbury Castle</a>, climb the castle walls for incredible views of the town and visit the spectacular collection of the Shropshire Regimental Museum Trust.</span></li> <li><span><a href="http://web.archive.org/web/20231210063606/http://www.shrewsburyabbey.com/" target="blank">Shrewsbury Abbey</a>, founded as a Benedictine Monastery, was more recently the setting for historical murder mystery series The Cadfael Chronicles.</span></li> <li><span><a href="http://web.archive.org/web/20231210063606/https://originalshrewsbury.co.uk/blog/the-darwin-shrewsbury-trail" target="blank">Darwin Town Trail</a>, walk in the footsteps of Charles Darwin, the world-renowned naturalist and geologist who was born and grew up in the town.</span></li> <li><span><a href="http://web.archive.org/web/20231210063606/http://www.shrewsburymuseum.org.uk/" target="blank">Shrewsbury Museum and Art Gallery</a>, explore millions of years of history from Roman tombstones and the Shropshire Mammoth to the Tudor and Stuart collections.</span></li> <li><span><a href="http://web.archive.org/web/20231210063606/http://www.theatresevern.co.uk/" target="blank">Theatre Severn</a>, enjoy comedy, theatre, music and dance at this striking riverside theatre on Frankwell Quay.</span></li> </ul><p dir="ltr">聽</p> <h2 dir="ltr"><span>A weekend in Shrewsbury</span></h2> <p dir="ltr"><span>There鈥檚 loads to do in the historic town centre and acres of green space to explore on foot.</span></p> <p dir="ltr"><strong>Take a walking tour</strong><span> - from the Welsh Bridge to the English Bridge at opposite ends of the town, or see the sights from the River Severn on a short cruise aboard the riverboat Sabrina. Guided walking tours start at the Museum and Art Gallery throughout the year (just on Saturdays from November to April). Get a sense of the town鈥檚 history on a tour of its churches, from medieval to Georgian times via a Welsh saint, the first House of Commons, a tree of glass and the place where Charles Darwin was baptised.</span></p> <p dir="ltr"><strong>Go shopping</strong><span> - find little boutiques down Shrewsbury鈥檚 crooked medieval alleyways, independent retailers outnumber the big chain stores here by almost half. For designer brands and high street retailers head to the Pride Hill and Darwin Shopping Centres. While Parade Shopping Centre offers a mix of local traders and independent boutiques.</span></p> <p dir="ltr"><strong>Sample the taste of Shropshire</strong><span> - on the first Friday of each month, Shrewsbury Farmers Market delivers the best locally produced food and drink to Shrewsbury Square. Beneath the iconic clock tower you鈥檒l find the award-winning indoor market, where independent caf茅s, gift boutiques, artisans and craftspeople sit alongside fresh fruit and veg stalls and family butchers. And of course there鈥檚 a traditional pub, cafe or vintage tea room around almost every corner.聽</span></p> <p dir="ltr"><strong>Get outdoors</strong><span> - the 29 acre Quarry Park is nestled in a curve in the river and hosts events throughout the year. It鈥檚 perfect for walks, bike rides and summer picnics. Or hire canoes by Porthill Bridge and paddle a section of the beautiful River Severn. At its heart lies the Dingle, a sunken botanical garden designed by Percy Thrower, with floral displays, landscaped lawns and fountains. And look out for the spectacle of the two-day Shrewsbury Flower Show each August.</span></p> <p dir="ltr"><span>Find out what鈥檚 coming up - </span><a href="http://web.archive.org/web/20231210063606/https://originalshrewsbury.co.uk/see-do/events/type/major-events" target="blank"><span>major events in Shrewsbury</span></a></p> <p>聽</p> <h2>Travel to Shrewsbury in first-class on our Premier Service</h2> <p><a data-entity-substitution="canonical" data-entity-type="node" data-entity-uuid="4c5325e0-8880-4d5b-8241-fd9d381c44a1" href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/stations/shrewsbury">Shrewsbury</a> is a stop on our Premier Service between Cardiff and Holyhead. <a data-entity-substitution="canonical" data-entity-type="node" data-entity-uuid="d9809bca-91f2-4e72-9afc-c7e0bc84120d" href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/rail/ticket-types/first-class">First-Class</a> tickets are available for travel between here and selected locations. Find out if these are available for your journey <a data-entity-substitution="canonical" data-entity-type="node" data-entity-uuid="430031d2-59e1-4d41-85b3-a23a28e1cc31" href="http://web.archive.org/web/20231210063606/https://tfw.wales/purchasing-your-ticket/train-times-and-train-tickets">here</a>.</p> <p>If you fancy treating yourself a little on your adventure to Shrewsbury, our <a data-entity-substitution="canonical" data-entity-type="node" data-entity-uuid="be9910eb-1f2e-4d21-af4c-7b2528f5cddc" href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/rail/food-and-drink/first-class-dining">first-class dining service</a> includes seasonal dishes served with charm and warmth.聽</p> <p>You can purchase a First-Class ticket on our <a data-entity-substitution="canonical" data-entity-type="node" data-entity-uuid="09c9a18b-44f4-4552-a134-c0c44c253924" href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/rail/buy-tickets/app">app</a> and <a data-entity-substitution="canonical" data-entity-type="node" data-entity-uuid="430031d2-59e1-4d41-85b3-a23a28e1cc31" href="http://web.archive.org/web/20231210063606/https://tfw.wales/purchasing-your-ticket/train-times-and-train-tickets">website</a>, from your station ticket office or ticket machines.</p> <p>聽</p> <p>Head to the <a href="http://web.archive.org/web/20231210063606/https://www.visitshropshire.co.uk/">Visit Shropshire website</a> to explore some more.</p> <div> <img src="/web/20231210063606im_/https://tfw.wales/sites/default/files/2023-06/Visit%20Shropshire%20Logo.png" width="1405" height="219" alt="Visit Shropshire logo" loading="lazy" typeof="foaf:Image"/></div> </div> </div> <div> </div> </div> <div class="layout__region layout__region--second"> <div> <div class="block--toc-qtt " id="toc_qtt"> <script async data-toc-qtt src="/web/20231210063606js_/https://tfw.wales/api/qtt/BASE_LOCAL?cfg=BASE_LOCAL&amp;origin=&amp;destination=&amp;isExpanded=true&amp;lng=en"></script> </div> </div> <div> <div class="promo-grid promo-grid--featured has-1-cols"> <ul class="promo-grid__list"> <li> <div class="promo" data-fully-linked> <div class="promo__category">Did you know?</div> <div class="promo__heading" role="heading" aria-level="3" aria-label="Travel safer">Travel safer</div> <div class="promo__copy">You can plan ahead and decide when to travel using our Capacity Checker.</div> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/service-status/capacity-checker" class="main-link" data-main-link>Check capacity</a> </div> </li> </ul> </div> </div> <div> </div> </div> <div class="layout__region layout__region--bottom"> <div> <div class="promo-grid promo-grid--destinations has-4-cols has-one-row"> <ul class="promo-grid__list"> <li class="promo promo--destination" data-fully-linked> <div class="promo__content-container"> <div class="promo__content"> <span class="promo__heading" role="heading" aria-level="3" aria-label="Harlech Castle">Harlech Castle</span> <a href="/web/20231210063606/https://tfw.wales/places/attractions/harlech-castle" class="main-link" data-main-link>Explore <span class="visually-hidden">Harlech Castle</span></a> </div> <div class="frame-16-9"> <img src="http://web.archive.org/web/20231210063606im_/https://tfw.wales/sites/default/files/styles/square_thumbnail_400x400/public/2022-08/Cadw%20Harlech%20Castle.jpg?itok=DydYnrRO" alt="Harlech Castle" class="promo__bg"/> </div> </div> </li> <li class="promo promo--destination" data-fully-linked> <div class="promo__content-container"> <div class="promo__content"> <span class="promo__heading" role="heading" aria-level="3" aria-label="Raglan Castle">Raglan Castle</span> <a href="/web/20231210063606/https://tfw.wales/places/attractions/raglan-castle" class="main-link" data-main-link>Explore <span class="visually-hidden">Raglan Castle</span></a> </div> <div class="frame-16-9"> <img src="http://web.archive.org/web/20231210063606im_/https://tfw.wales/sites/default/files/styles/square_thumbnail_400x400/public/2022-08/Cadw%20Raglan%20Castle.jpg?itok=-UMbIyYP" alt="Raglan Castle" class="promo__bg"/> </div> </div> </li> <li class="promo promo--destination" data-fully-linked> <div class="promo__content-container"> <div class="promo__content"> <span class="promo__heading" role="heading" aria-level="3" aria-label="Kidwelly Castle">Kidwelly Castle</span> <a href="/web/20231210063606/https://tfw.wales/places/attractions/kidwelly-castle" class="main-link" data-main-link>Explore <span class="visually-hidden">Kidwelly Castle</span></a> </div> <div class="frame-16-9"> <img src="http://web.archive.org/web/20231210063606im_/https://tfw.wales/sites/default/files/styles/square_thumbnail_400x400/public/2020-04/Kidwelly-Castle.jpg?itok=Hg3eAEog" alt="Kidwelly Castle" class="promo__bg"/> </div> </div> </li> <li class="promo promo--destination promo--landing-page-box" data-fully-linked> <div class="promo__content-container"> <div class="promo__content"> <span class="promo__heading" role="heading" aria-level="3" aria-label="Be inspired">Be inspired</span> <p>Discover more destinations</p> <a href="/web/20231210063606/https://tfw.wales/places/destinations" class="main-link" data-main-link>Explore</a> </div> </div> </li> </ul> </div> </div> </div> </div> </div> </article> </div> </div> </div> </div> </div> </main> <div class="mdc-layout-grid"> <div class="mdc-layout-grid__inner"> <div class="mdc-layout-grid__cell--span-12 site-footer__lower-container mobile-only"> <div class="site-footer__btt-section"> <a class="social-link" aria-label="Back to Top" href="#siteHeader"> <img role="presentation" src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/icon-btt.svg"> <span>Back to top</span></a> </div> </div> </div> </div> <div class="mdc-layout-grid"> <section class="logo-bar desktop-only-flex"> <div class="logo-container tfw-logo"> <img src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/tfw.svg" alt="tfw"/> </div> <div class="logo-container wg-logo"> <img src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/wg-logo.svg" alt="" role="presentation"> </div> <div class=" logo-container dft-logo-en"> <img src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/DfT_3298_SML_AW.png" alt="" role="presentation"> </div> <div class=" logo-container er-logo"> <img src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/erdf-logo.png" alt="" role="presentation"> </div> </section> </div> <footer class="site-footer" role="contentinfo"> <div class="mdc-layout-grid footer-menus-container"> <div class="mdc-layout-grid__inner"> <div class="mdc-layout-grid__cell--span-3-desktop mdc-layout-grid__cell--span-2-tablet mdc-layout-grid__cell--span-4-phone"> <div> <nav role="navigation" aria-labelledby="block-ticketsandrailcards-menu" id="block-ticketsandrailcards"> <h2 id="block-ticketsandrailcards-menu">Top areas</h2> <ul> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/careers" data-drupal-link-system-path="node/27061">Careers</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel" data-drupal-link-system-path="node/28526">Ways to travel</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/service-status" data-drupal-link-system-path="node/28536">Service status</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us" data-drupal-link-system-path="node/28546">About Transport for Wales</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/projects" data-drupal-link-system-path="node/29246">Projects</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places" data-drupal-link-system-path="node/29241">Places and routes</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/stations" data-drupal-link-system-path="node/26">Find a station</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/popular-routes" data-drupal-link-system-path="node/17486">Popular routes</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us/transparency/publications" data-drupal-link-system-path="node/27956">Publications</a> </li> </ul> </nav> </div> </div> <div class="mdc-layout-grid__cell--span-3-desktop mdc-layout-grid__cell--span-2-tablet mdc-layout-grid__cell--span-4-phone"> <div> <nav role="navigation" aria-labelledby="block-travelupdates-menu" id="block-travelupdates"> <h2 id="block-travelupdates-menu">Info for...</h2> <ul> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/passengers" data-drupal-link-system-path="node/28661">Passengers and travellers</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/young-travellers" data-drupal-link-system-path="node/28666">Young travellers</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/passengers/accessible-travel" data-drupal-link-system-path="node/29526">Accessible travel</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/over-60s" data-drupal-link-system-path="node/28671">Over 60s</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/kids-and-schools" data-drupal-link-system-path="node/28676">Kids and schools</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/visitors-and-tourists" data-drupal-link-system-path="node/28696">Visitors and tourists</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/communities" data-drupal-link-system-path="node/28681">Communities</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/job-hunters" data-drupal-link-system-path="node/28686">Job hunters</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/government-and-councils" data-drupal-link-system-path="node/28701">Government and councils</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/suppliers-and-partners" data-drupal-link-system-path="node/28711">Suppliers and partners</a> </li> </ul> </nav> </div> </div> <div class="mdc-layout-grid__cell--span-3-desktop mdc-layout-grid__cell--span-2-tablet mdc-layout-grid__cell--span-4-phone"> <div> <nav role="navigation" aria-labelledby="block-topdestinations-menu" id="block-topdestinations"> <h2 id="block-topdestinations-menu">Top destinations</h2> <ul> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/popular-routes" data-drupal-link-system-path="node/17486">Popular routes</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/destinations/aberystwyth" data-drupal-link-system-path="node/1086">Trains to Aberystwyth</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/destinations/cardiff" data-drupal-link-system-path="node/261">Trains to Cardiff</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/destinations/liverpool" data-drupal-link-system-path="node/1031">Trains to Liverpool</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/destinations/manchester" data-drupal-link-system-path="node/271">Trains to Manchester</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/destinations/shrewsbury" data-drupal-link-system-path="node/276" class="is-active">Trains to Shrewsbury</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/places/destinations/swansea" data-drupal-link-system-path="node/726">Trains to Swansea</a> </li> </ul> </nav> </div> </div> <div class="mdc-layout-grid__cell--span-3-desktop mdc-layout-grid__cell--span-2-tablet mdc-layout-grid__cell--span-4-phone"> <div> <nav role="navigation" aria-labelledby="block-policiesforpeople-menu" id="block-policiesforpeople"> <h2 id="block-policiesforpeople-menu">Policies for people</h2> <ul> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/accessibility-statement-tfwwales" data-drupal-link-system-path="node/31931">Accessibility statement</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/passengers/accessible-travel/policies-and-information" data-drupal-link-system-path="node/931">Accessible travel</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/bilingual-policy" data-drupal-link-system-path="node/461">Bilingual policy</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us/our-culture/equality" data-drupal-link-system-path="node/27651">Equality and diversity</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/gender-pay-gap-report" data-drupal-link-system-path="node/31361">Gender Pay Gap report</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/modern-slavery-statement" data-drupal-link-system-path="node/30216">Modern Slavery Statement</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/sustainable-development-and-environment-policy" data-drupal-link-system-path="node/52771">Sustainable development and environment policy</a> </li> </ul> </nav> <nav role="navigation" aria-labelledby="block-usefullinks-menu" id="block-usefullinks"> <h2 id="block-usefullinks-menu">Useful links</h2> <ul> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/cycling/bikes-on-board" data-drupal-link-system-path="node/371">Bikes on board</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/info-for/passengers/accessible-travel/booking-assistance" data-drupal-link-system-path="node/361">Booking assisted travel</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/ways-to-travel/road/car-parks" data-drupal-link-system-path="node/221">Car parking</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us" data-drupal-link-system-path="node/28546">Corporate info</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/about-us/our-culture/safety/security" data-drupal-link-system-path="node/20906">Security</a> </li> </ul> </nav> </div> </div> </div> <div class="mdc-layout-grid__inner"> <div class="mdc-layout-grid__cell--span-12 site-footer__lower-container"> <div class=""> <a class="social-link" aria-label="Social Media Link" href="/web/20231210063606/https://tfw.wales/social-media"> <div> <a aria-label="Social Media Link" href="/web/20231210063606/https://tfw.wales/social-media"> <div class="flex items-center"> <img role="presentation" src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/icon-social-group.svg"> <span class="flex items-center pl-4 !text-[16px]">Connect with us on social media </span> </div> </a> </div> </div> <div> <div class="sm:flex sm:flex-row-reverse sm:justify-center sm:m-auto"> <span class="flex justify-center pb-4 sm:items-center sm:pb-0"> <h2 class="m-0 !text-[16px] font-normal text-black">Download our rail app</h2> </span> <div class="flex gap-4 justify-center px-4 max-w-sm mx-[auto]"> <div> <a href="http://web.archive.org/web/20231210063606/https://apps.apple.com/us/app/trc-tfw-cheap-train-tickets/id1589080838" rel="nofollow"> <img class="block" aria-hidden="true" src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/assets/images/apple-app-icon.png" alt="Download our TfW Rail App on the Apple App Store"> <span class="sr-only"> Download our TfW Rail App on the Apple App Store </span> </a> </div> <div> <a href="http://web.archive.org/web/20231210063606/https://play.google.com/store/apps/details?id=wales.tfw.rail.app" rel="nofollow"> <img class="block" aria-hidden="true" src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/assets/images/google-app-icon.png" alt="Download our TfW Rail App on the Google Play Store"> <span class="sr-only"> Download our TfW Rail App on the Google Play Store </span> </a> </div> </div> </div> </div> <div class="desktop-only"> <a class="" aria-label="Back to top" href="#siteHeader"> <div class="flex items-center justify-end"> <div class=""> <svg class="rounded-full shadow" xmlns="http://www.w3.org/2000/svg" width="40" height="40"><g fill="none"><path d="M0 20C0 8.954 8.954 0 20 0s20 8.954 20 20-8.954 20-20 20S0 31.046 0 20z" fill="#FFFFFF"/><path fill="#333" d="M12 20l1.41 1.41L19 15.83V28h2V15.83l5.58 5.59L28 20l-8-8z"/></g></svg> </div> <span class="px-4">Back to top</span> </div> </a> </div> </div> </div> </div> <section class="logo-bar mobile-only-flex"> <div class="logo-container tfw-logo"> <img src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/tfw.svg" alt="tfw"/> </div> <div class="logo-container wg-logo"> <img src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/wg-logo.svg" alt="" role="presentation"> </div> <div class=" logo-container dft-logo-en"> <img src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/DfT_3298_SML_AW.png" alt="" role="presentation"> </div> <div class=" logo-container er-logo"> <img src="/web/20231210063606im_/https://tfw.wales/themes/custom/one_domain/dist/img/erdf-logo.png" alt="" role="presentation"> </div> </section> <div class="site-footer__bottom-container"> <div class="mdc-layout-grid"> <div class="mdc-layout-grid__inner"> <div class="copyright mdc-layout-grid__cell--span-7-desktop mdc-layout-grid__cell--span-4-tablet mdc-layout-grid__cell--span-4-phone "> <p>漏 2023 TfW</p> <a class="legal-text" href="/web/20231210063606/https://tfw.wales/transport-wales" rel="nofollow">Transport for Wales Ltd - Registered in England and Wales under number 09476013 at Llys Cadwyn, Pontypridd, CF37 4TH</a> </div> <div class="menu-cont mdc-layout-grid__cell--span-5-desktop mdc-layout-grid__cell--span-4-tablet mdc-layout-grid__cell--span-4-phone "> <div class="bottom-footer-menu"> <div> <nav role="navigation" aria-labelledby="block-bottomfootermenu-menu" id="block-bottomfootermenu"> <h2 class="visually-hidden" id="block-bottomfootermenu-menu">Bottom Footer Menu</h2> <ul> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/cookie-policy" data-drupal-link-system-path="node/476">Cookie policy</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/website-privacy-statement" data-drupal-link-system-path="node/30291">Privacy policy</a> </li> <li> <a href="http://web.archive.org/web/20231210063606/https://tfw.wales/terms-and-conditions" data-drupal-link-system-path="node/30296">Terms and conditions</a> </li> </ul> </nav> </div> </div> </div> </div> </div> </div> </footer> </div> </div> <script type="application/json" data-drupal-selector="drupal-settings-json">{"path":{"baseUrl":"\/","scriptPath":null,"pathPrefix":"","currentPath":"node\/276","currentPathIsAdmin":false,"isFront":false,"currentLanguage":"en"},"pluralDelimiter":"\u0003","suppressDeprecationErrors":true,"gtm":{"tagId":null,"settings":{"data_layer":"dataLayer","include_classes":false,"allowlist_classes":"","blocklist_classes":"","include_environment":false,"environment_id":"","environment_token":""},"tagIds":["GTM-T34X6QX"]},"gtag":{"tagId":"","otherIds":[],"events":[],"additionalConfigInfo":[]},"ajaxPageState":{"libraries":"cookies\/cookiesjsr,cookies_gtag\/gtag,google_tag\/gtag,google_tag\/gtag.ajax,google_tag\/gtm,keolis_layout_blocks\/keo-pidd,keolis_layout_blocks\/language_switcher,keolis_meganav\/keolis_meganav.library,layout_discovery\/twocol,media\/filter.caption,one_domain\/global-js,one_domain\/global-styling,system\/base","theme":"one_domain","theme_token":null},"ajaxTrustedUrl":[],"feature_toggle":{"enabled":["send_nre_station_data_to_xtm"]},"cookies":{"cookiesjsr":{"config":{"cookie":{"name":"cookiesjsr","expires":31536000000,"domain":"","sameSite":"Lax","secure":false},"library":{"libBasePath":"\/libraries\/cookiesjsr\/dist","libPath":"\/libraries\/cookiesjsr\/dist\/cookiesjsr.min.js","scrollLimit":0},"callback":{"method":"post","url":"\/cookies\/example\/callback.json","headers":[]},"interface":{"openSettingsHash":"#editCookieSettings","showDenyAll":true,"denyAllOnLayerClose":false,"settingsAsLink":false,"availableLangs":["en","cy"],"defaultLang":"en","groupConsent":true,"cookieDocs":true}},"services":{"default":{"id":"default","services":[{"key":"base","type":"default","name":"Required cookies","info":{"value":"\u003Ctable\u003E\r\n\t\u003Cthead\u003E\r\n\t\t\u003Ctr\u003E\r\n\t\t\t\u003Cth width=\u002215%\u0022\u003ECookie name\u003C\/th\u003E\r\n\t\t\t\u003Cth width=\u002215%\u0022\u003EDefault expiration time\u003C\/th\u003E\r\n\t\t\t\u003Cth\u003EDescription\u003C\/th\u003E\r\n\t\t\u003C\/tr\u003E\r\n\t\u003C\/thead\u003E\r\n\t\u003Ctbody\u003E\r\n\t\t\u003Ctr\u003E\r\n\t\t\t\u003Ctd\u003E\u003Ccode dir=\u0022ltr\u0022 translate=\u0022no\u0022\u003ESSESS\u0026lt;ID\u0026gt;\u003C\/code\u003E\u003C\/td\u003E\r\n\t\t\t\u003Ctd\u003E1 month\u003C\/td\u003E\r\n\t\t\t\u003Ctd\u003EIf you are logged in to this website, a session cookie is required to identify and connect your browser to your user account in the server backend of this website.\u003C\/td\u003E\r\n\t\t\u003C\/tr\u003E\r\n\t\t\u003Ctr\u003E\r\n\t\t\t\u003Ctd\u003E\u003Ccode dir=\u0022ltr\u0022 translate=\u0022no\u0022\u003Ecookiesjsr\u003C\/code\u003E\u003C\/td\u003E\r\n\t\t\t\u003Ctd\u003E1 year\u003C\/td\u003E\r\n\t\t\t\u003Ctd\u003EWhen you visited this website for the first time, you were asked for your permission to use several services (including those from third parties) that require data to be saved in your browser (cookies, local storage). Your decisions about each service (allow, deny) are stored in this cookie and are reused each time you visit this website.\u003C\/td\u003E\r\n\t\t\u003C\/tr\u003E\r\n\t\u003C\/tbody\u003E\r\n\u003C\/table\u003E\r\n","format":"full_html"},"uri":"","needConsent":false}],"weight":1},"tracking":{"id":"tracking","services":[{"key":"recaptcha","type":"tracking","name":"reCAPTCHA","info":{"value":"","format":"full_html"},"uri":"","needConsent":true}],"weight":10},"performance":{"id":"performance","services":[{"key":"gtag","type":"performance","name":"Google Tag Manager","info":{"value":"","format":"full_html"},"uri":"","needConsent":true}],"weight":30}},"translation":{"_core":{"default_config_hash":"C8aQz-3d6YpwuU4QQc1iaWHb3RDkc_C9qcEsgR7HR74"},"langcode":"en","bannerText":"In order to give you the best experience we have set our website to allow cookies. By continuing, you agree that you are happy for us to use these cookies.\r\n\r\nTo change your cookie settings for our website please select \u201cCookie settings\u201d","privacyPolicy":"Privacy policy","privacyUri":"http:\/\/web.archive.org\/web\/20231210063606\/https:\/\/tfw.wales\/website-privacy-statement","imprint":"","imprintUri":"","cookieDocs":"","cookieDocsUri":"","denyAll":"","alwaysActive":"Always active","settings":"Cookie settings","acceptAll":"Accept all","requiredCookies":"Required cookies","cookieSettings":"Cookie settings","close":"Close","readMore":"Read more","allowed":"allowed","denied":"denied","settingsAllServices":"Settings for all services","saveSettings":"Save","default_langcode":"en","disclaimerText":"All cookie information is subject to change by the service providers. We update this information regularly.","disclaimerTextPosition":"above","processorDetailsLabel":"Processor Company Details","processorLabel":"Company","processorWebsiteUrlLabel":"Company Website","processorPrivacyPolicyUrlLabel":"Company Privacy Policy","processorCookiePolicyUrlLabel":"Company Cookie Policy","processorContactLabel":"Data Protection Contact Details","placeholderAcceptAllText":"Accept All Cookies","officialWebsite":"View official website","default":{"title":"What are Cookies?","details":"Cookies are small text files that are placed by your browser on your device in order to store certain information. Using the information that is stored and returned, a website can recognize that you have previously accessed and visited it using the browser on your end device. We use this information to arrange and display the website optimally in accordance with your preferences. Within this process, only the cookie itself is identified on your device. Personal data is only stored following your express consent or where this is absolutely necessary to enable use the service provided by us and accessed by you."},"tracking":{"title":"Tracking cookies","details":"Marketing cookies come from external advertising companies (\u0022third-party cookies\u0022) and are used to collect information about the websites visited by the user. The purpose of this is to create and display target group-oriented content and advertising for the user."},"performance":{"title":"Performance Cookies","details":"Performance cookies collect aggregated information about how our website is used. The purpose of this is to improve its attractiveness, content and functionality. These cookies help us to determine whether, how often and for how long particular sub-pages of our website are accessed and which content users are particularly interested in. Search terms, country, region and (where applicable) the city from which the website is accessed are also recorded, as is the proportion of mobile devices that are used to access the website. We use this information to compile statistical reports that help us tailor the content of our website to your needs and optimize our offer."}}},"cookiesTexts":{"_core":{"default_config_hash":"C8aQz-3d6YpwuU4QQc1iaWHb3RDkc_C9qcEsgR7HR74"},"langcode":"en","bannerText":"In order to give you the best experience we have set our website to allow cookies. By continuing, you agree that you are happy for us to use these cookies.\r\n\r\nTo change your cookie settings for our website please select \u201cCookie settings\u201d","privacyPolicy":"Privacy policy","privacyUri":"\/node\/30291","imprint":"","imprintUri":"","cookieDocs":"","cookieDocsUri":"","denyAll":"","alwaysActive":"Always active","settings":"Cookie settings","acceptAll":"Accept all","requiredCookies":"Required cookies","cookieSettings":"Cookie settings","close":"Close","readMore":"Read more","allowed":"allowed","denied":"denied","settingsAllServices":"Settings for all services","saveSettings":"Save","default_langcode":"en","disclaimerText":"All cookie information is subject to change by the service providers. We update this information regularly.","disclaimerTextPosition":"above","processorDetailsLabel":"Processor Company Details","processorLabel":"Company","processorWebsiteUrlLabel":"Company Website","processorPrivacyPolicyUrlLabel":"Company Privacy Policy","processorCookiePolicyUrlLabel":"Company Cookie Policy","processorContactLabel":"Data Protection Contact Details","placeholderAcceptAllText":"Accept All Cookies","officialWebsite":"View official website"},"services":{"base":{"uuid":"0fbacba6-203d-4fe9-9b5d-6aebbf42a275","langcode":"en","status":true,"dependencies":[],"_core":{"default_config_hash":"XM4JB6AQPEeejASzikI0SZ5bJNvp4j6qJ9Ri1kK7vyw"},"id":"base","label":"Required cookies","group":"default","info":{"value":"\u003Ctable\u003E\r\n\t\u003Cthead\u003E\r\n\t\t\u003Ctr\u003E\r\n\t\t\t\u003Cth width=\u002215%\u0022\u003ECookie name\u003C\/th\u003E\r\n\t\t\t\u003Cth width=\u002215%\u0022\u003EDefault expiration time\u003C\/th\u003E\r\n\t\t\t\u003Cth\u003EDescription\u003C\/th\u003E\r\n\t\t\u003C\/tr\u003E\r\n\t\u003C\/thead\u003E\r\n\t\u003Ctbody\u003E\r\n\t\t\u003Ctr\u003E\r\n\t\t\t\u003Ctd\u003E\u003Ccode dir=\u0022ltr\u0022 translate=\u0022no\u0022\u003ESSESS\u0026lt;ID\u0026gt;\u003C\/code\u003E\u003C\/td\u003E\r\n\t\t\t\u003Ctd\u003E1 month\u003C\/td\u003E\r\n\t\t\t\u003Ctd\u003EIf you are logged in to this website, a session cookie is required to identify and connect your browser to your user account in the server backend of this website.\u003C\/td\u003E\r\n\t\t\u003C\/tr\u003E\r\n\t\t\u003Ctr\u003E\r\n\t\t\t\u003Ctd\u003E\u003Ccode dir=\u0022ltr\u0022 translate=\u0022no\u0022\u003Ecookiesjsr\u003C\/code\u003E\u003C\/td\u003E\r\n\t\t\t\u003Ctd\u003E1 year\u003C\/td\u003E\r\n\t\t\t\u003Ctd\u003EWhen you visited this website for the first time, you were asked for your permission to use several services (including those from third parties) that require data to be saved in your browser (cookies, local storage). Your decisions about each service (allow, deny) are stored in this cookie and are reused each time you visit this website.\u003C\/td\u003E\r\n\t\t\u003C\/tr\u003E\r\n\t\u003C\/tbody\u003E\r\n\u003C\/table\u003E\r\n","format":"full_html"},"consentRequired":false,"purpose":"","processor":"","processorContact":"","processorUrl":"","processorPrivacyPolicyUrl":"","processorCookiePolicyUrl":"","placeholderMainText":"This content is blocked because Required cookies cookies have not been accepted.","placeholderAcceptText":"Only accept Required cookies cookies."},"gtag":{"uuid":"13110851-6ce2-4d67-bb04-4334cd8d41cf","langcode":"en","status":true,"dependencies":[],"_core":{"default_config_hash":"cqbQDWvg17Bh-c7-1_WxErWNtcOfbeS70HdFPseBTKE"},"id":"gtag","label":"Google Tag Manager","group":"performance","info":{"value":"","format":"full_html"},"consentRequired":true,"purpose":"","processor":"","processorContact":"","processorUrl":"","processorPrivacyPolicyUrl":"","processorCookiePolicyUrl":"","placeholderMainText":"This content is blocked because Google Tag Manager cookies have not been accepted.","placeholderAcceptText":"Only accept Google Tag Manager cookies."},"recaptcha":{"uuid":"94a086b8-df63-4ddd-aa70-cffdf34a76ce","langcode":"en","status":true,"dependencies":[],"_core":{"default_config_hash":"KjF0zxDenAn5XBAqISi0iAaVN9XTCDtOoMez23BR7rM"},"id":"recaptcha","label":"reCAPTCHA","group":"tracking","info":{"value":"","format":"full_html"},"consentRequired":true,"purpose":"","processor":"","processorContact":"","processorUrl":"","processorPrivacyPolicyUrl":"","processorCookiePolicyUrl":"","placeholderMainText":"This content is blocked because reCAPTCHA cookies have not been accepted.","placeholderAcceptText":"Only accept reCAPTCHA cookies."}},"groups":{"default":{"uuid":"234f6dd4-df58-40ba-aeef-5d1057756794","langcode":"en","status":true,"dependencies":[],"_core":{"default_config_hash":"MWjA0PCPcQbODMR7UjJxq4hK8JzyYy4zZeQmmQVjC3M"},"id":"default","label":"Default","weight":1,"title":"What are Cookies?","details":"Cookies are small text files that are placed by your browser on your device in order to store certain information. Using the information that is stored and returned, a website can recognize that you have previously accessed and visited it using the browser on your end device. We use this information to arrange and display the website optimally in accordance with your preferences. Within this process, only the cookie itself is identified on your device. Personal data is only stored following your express consent or where this is absolutely necessary to enable use the service provided by us and accessed by you."},"functional":{"uuid":"c3964d03-f05d-4e69-a3db-08430c7d4ed2","langcode":"en","status":true,"dependencies":[],"id":"functional","label":"Functional","weight":1,"title":"Functional","details":"Cookies are small text files that are placed by your browser on your device in order to store certain information. Using the information that is stored and returned, a website can recognize that you have previously accessed and visited it using the browser on your end device. We use this information to arrange and display the website optimally in accordance with your preferences. Within this process, only the cookie itself is identified on your device. Personal data is only stored following your express consent or where this is absolutely necessary to enable use the service provided by us and accessed by you."},"performance":{"uuid":"5bce227e-59c8-4532-81c7-82a1756bd1da","langcode":"en","status":true,"dependencies":[],"_core":{"default_config_hash":"Jv3uIJviBj7D282Qu1ZpEQwuOEb3lCcDvx-XVHeOJpw"},"id":"performance","label":"Performance","weight":30,"title":"Performance Cookies","details":"Performance cookies collect aggregated information about how our website is used. The purpose of this is to improve its attractiveness, content and functionality. These cookies help us to determine whether, how often and for how long particular sub-pages of our website are accessed and which content users are particularly interested in. Search terms, country, region and (where applicable) the city from which the website is accessed are also recorded, as is the proportion of mobile devices that are used to access the website. We use this information to compile statistical reports that help us tailor the content of our website to your needs and optimize our offer."},"social":{"uuid":"b99946bc-fede-449c-9ae7-ca5eb7653081","langcode":"en","status":true,"dependencies":[],"_core":{"default_config_hash":"vog2tbqqQHjVkue0anA0RwlzvOTPNTvP7_JjJxRMVAQ"},"id":"social","label":"Social Plugins","weight":20,"title":"Social Plugins","details":"Comments managers facilitate the filing of comments and fight against spam."},"tracking":{"uuid":"75bf8cce-ebe2-48c0-af09-67327ed54a0a","langcode":"en","status":true,"dependencies":[],"_core":{"default_config_hash":"_gYDe3qoEc6L5uYR6zhu5V-3ARLlyis9gl1diq7Tnf4"},"id":"tracking","label":"Tracking","weight":10,"title":"Tracking cookies","details":"Marketing cookies come from external advertising companies (\u0022third-party cookies\u0022) and are used to collect information about the websites visited by the user. The purpose of this is to create and display target group-oriented content and advertising for the user."},"video":{"uuid":"ccbe796b-48c5-4b52-afd5-c46abf7befd0","langcode":"en","status":true,"dependencies":[],"_core":{"default_config_hash":"w1WnCmP2Xfgx24xbx5u9T27XLF_ZFw5R0MlO-eDDPpQ"},"id":"video","label":"Videos","weight":40,"title":"Video","details":"Video sharing services help to add rich media on the site and increase its visibility."}}},"qtt":{"promo":""},"user":{"uid":0,"permissionsHash":"27d4f3b560eda86e6fa9ae6f7d9ed095200e8ffad89621c936f0b6370d569b8f"}}</script> <script src="/web/20231210063606js_/https://tfw.wales/sites/default/files/js/js_KSh890BR6kS385rWjQR9BbL6PS8XMtS2viw3W2FBlpQ.js?scope=footer&amp;delta=0&amp;language=en&amp;theme=one_domain&amp;include=eJxtT21uwzAIvZAbDrMDWMSmHgk2kSHtcvslajatU_6A3oceD9vMqcKIRkEbxawVuUERHVFu5ptwKxfKZCFpJ8h9XVA-yH33WRBNKATesZmgs7bDpzOTxeJY4BihqBah-ML1He7yn-Bh6Vo6mf03DTjhVxDcdPWY2ZI-qG_gT00q4c7i1CHhclQIlTIjvMjhhzxrwbkn2yVt9ws-zKTCFs9r4_7kbLCTt4VzvlYFW1mxULQne_qk35BKBRs-4B0OwmPHvn0DQricIw"></script> <script src="/web/20231210063606js_/https://tfw.wales/modules/custom/keolis_layout_blocks/js/vendor/vue.min.js?s4h95w"></script> <script src="/web/20231210063606js_/https://tfw.wales/sites/default/files/js/js__xlekBt84MP9OeXo8teqJ57tfLpMLviSPr_HRMhJVoE.js?scope=footer&amp;delta=2&amp;language=en&amp;theme=one_domain&amp;include=eJxtT21uwzAIvZAbDrMDWMSmHgk2kSHtcvslajatU_6A3oceD9vMqcKIRkEbxawVuUERHVFu5ptwKxfKZCFpJ8h9XVA-yH33WRBNKATesZmgs7bDpzOTxeJY4BihqBah-ML1He7yn-Bh6Vo6mf03DTjhVxDcdPWY2ZI-qG_gT00q4c7i1CHhclQIlTIjvMjhhzxrwbkn2yVt9ws-zKTCFs9r4_7kbLCTt4VzvlYFW1mxULQne_qk35BKBRs-4B0OwmPHvn0DQricIw"></script> <script src="/web/20231210063606js_/https://tfw.wales/modules/contrib/google_tag/js/gtm.js?s4h95w" type="text/plain" id="cookies_gtag_gtm" data-cookieconsent="gtag"></script> <script src="/web/20231210063606js_/https://tfw.wales/modules/contrib/google_tag/js/gtag.js?s4h95w" type="text/plain" id="cookies_gtag_gtag" data-cookieconsent="gtag"></script> <script src="/web/20231210063606js_/https://tfw.wales/sites/default/files/js/js_VQZLqOhert-bx1snOj90Ygv7-uwKI_FZeZAK5LHyNeo.js?scope=footer&amp;delta=5&amp;language=en&amp;theme=one_domain&amp;include=eJxtT21uwzAIvZAbDrMDWMSmHgk2kSHtcvslajatU_6A3oceD9vMqcKIRkEbxawVuUERHVFu5ptwKxfKZCFpJ8h9XVA-yH33WRBNKATesZmgs7bDpzOTxeJY4BihqBah-ML1He7yn-Bh6Vo6mf03DTjhVxDcdPWY2ZI-qG_gT00q4c7i1CHhclQIlTIjvMjhhzxrwbkn2yVt9ws-zKTCFs9r4_7kbLCTt4VzvlYFW1mxULQne_qk35BKBRs-4B0OwmPHvn0DQricIw"></script> <script src="/web/20231210063606js_/https://tfw.wales/modules/contrib/cookies/js/cookiesjsr.conf.js?v=10.1.6"></script> <script src="/web/20231210063606js_/https://tfw.wales/libraries/cookiesjsr/dist/cookiesjsr-preloader.min.js?v=10.1.6" defer></script> <script src="/web/20231210063606js_/https://tfw.wales/sites/default/files/js/js_N0Hxe5cZ3yXGRh-vr9lCTD0xrQll9VSPRZfFOTDOI0w.js?scope=footer&amp;delta=8&amp;language=en&amp;theme=one_domain&amp;include=eJxtT21uwzAIvZAbDrMDWMSmHgk2kSHtcvslajatU_6A3oceD9vMqcKIRkEbxawVuUERHVFu5ptwKxfKZCFpJ8h9XVA-yH33WRBNKATesZmgs7bDpzOTxeJY4BihqBah-ML1He7yn-Bh6Vo6mf03DTjhVxDcdPWY2ZI-qG_gT00q4c7i1CHhclQIlTIjvMjhhzxrwbkn2yVt9ws-zKTCFs9r4_7kbLCTt4VzvlYFW1mxULQne_qk35BKBRs-4B0OwmPHvn0DQricIw"></script> <script src="/web/20231210063606js_/https://tfw.wales/themes/custom/one_domain/src/js/flatpickr.js"></script> <script src="/web/20231210063606js_/https://tfw.wales/themes/custom/one_domain/dist/scripts.min.js"></script> <script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.eu01.nr-data.net","licenseKey":"NRJS-34dae6faa52b003b8b9","applicationID":"530256513","transactionName":"MhBSZQoZCkRQWkdZXgtacVIMEQtZHn1BRUEEGWxfFxwBa3JWXURDChlcVAokKlhVXGVZVBI2X18MCgtbXVxBHQ8THFVG","queueTime":4,"applicationTime":950,"atts":"HldRE0IDGUo=","errorBeacon":"bam.eu01.nr-data.net","agent":""}</script></body> </html> <!-- FILE ARCHIVED ON 06:36:06 Dec 10, 2023 AND RETRIEVED FROM THE INTERNET ARCHIVE ON 02:05:45 Dec 05, 2024. JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE. ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C. SECTION 108(a)(3)). --> <!-- playback timings (ms): captures_list: 0.573 exclusion.robots: 0.04 exclusion.robots.policy: 0.029 esindex: 0.01 cdx.remote: 18.26 LoadShardBlock: 126.038 (3) PetaboxLoader3.datanode: 117.558 (4) PetaboxLoader3.resolve: 93.014 (2) load_resource: 106.633 -->

Pages: 1 2 3 4 5 6 7 8 9 10