{"id":43591,"date":"2026-07-10T18:19:59","date_gmt":"2026-07-10T17:19:59","guid":{"rendered":"https:\/\/monopolyeventshub.com\/runappnow\/?page_id=43591"},"modified":"2026-07-11T20:37:03","modified_gmt":"2026-07-11T19:37:03","slug":"live-schedule-birmingham","status":"publish","type":"page","link":"https:\/\/monopolyeventshub.com\/runappnow\/all-events\/birmingham-categories\/live-schedule-birmingham\/","title":{"rendered":"Live Schedule (Birmingham)"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"43591\" class=\"elementor elementor-43591\">\n\t\t\t\t<div class=\"elementor-element elementor-element-42820df e-con-full e-flex e-con e-parent\" data-id=\"42820df\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d434b58 elementor-widget elementor-widget-html\" data-id=\"d434b58\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t  <a href=\"https:\/\/monopolyeventshub.com\/runappnow\/all-events\/birmingham-categories\/\" class=\"header-link\">\r\n    <div class=\"midlands-top-header\" style=\"padding: 58px 16px 16px 16px;\">\r\n      <div class=\"back-header-icon\"><i class=\"fa-solid fa-circle-arrow-left\"><\/i><\/div>\r\n     <h2 class=\"top-header-title\">Live Schedule<\/h2>\r\n    <\/div>  <\/a>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6da75d3 e-flex e-con-boxed e-con e-parent\" data-id=\"6da75d3\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2988642 elementor-widget elementor-widget-spacer\" data-id=\"2988642\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-aef7fa9 e-con-full e-flex e-con e-parent\" data-id=\"aef7fa9\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6d6974d elementor-widget elementor-widget-html\" data-id=\"6d6974d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1>Sunday Guest Schedules<\/h1>\r\n<div class=\"sub\"><span style=\"color: #ffffff;\">Guests may step away from their autograph table while attending panels or photo sessions. Check the live schedule below for their current activity.<\/span><\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-ccb39cc e-flex e-con-boxed e-con e-parent\" data-id=\"ccb39cc\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-66e07e4 elementor-widget elementor-widget-html\" data-id=\"66e07e4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\r\n<div class=\"page\">\r\n<header>\r\n\r\n  <div class=\"controls\">\r\n    <input id=\"search\" class=\"search\" placeholder=\"Search guest\u2026\">\r\n\r\n    <div class=\"dayToggle\" aria-label=\"Day selector\">\r\n      <button class=\"dayBtn\" id=\"btnToday\" data-day=\"today\" data-active=\"true\">Today<\/button>\r\n<\/div>\r\n<\/div>\r\n<\/header>\r\n\r\n<div id=\"grid\" class=\"grid\"><\/div>\r\n<\/div>\r\n\r\n<nav class=\"bottomBar\" aria-label=\"Filter guests by status\">\r\n  <div class=\"filterRow\" id=\"filterRow\">\r\n    <button class=\"fbtn\" data-filter=\"all\" data-active=\"true\">All<\/button>\r\n    <button class=\"fbtn\" data-filter=\"desk\">Desk<\/button>\r\n    <button class=\"fbtn\" data-filter=\"photo\">Photos<\/button>\r\n    <button class=\"fbtn\" data-filter=\"panel\">Panel<\/button>\r\n    <button class=\"fbtn\" data-filter=\"lunch\">Lunch<\/button>\r\n    <button class=\"fbtn\" data-filter=\"away\">Away<\/button>\r\n  <\/div>\r\n<\/nav>\r\n\r\n<script>\r\nconst eventTimeZone = \"Europe\/London\";\r\n\r\nfunction toMins(t){\r\n  if(!t) return 0;\r\n  const parts = String(t).trim().split(\":\");\r\n  const h = Number(parts[0] || 0);\r\n  const m = Number(parts[1] || 0);\r\n  return (h * 60) + m;\r\n}\r\n\r\n\/** Current time (minutes since midnight) in the configured event timezone *\/\r\nfunction getNowMinsInTZ(){\r\n  const now = new Date();\r\n  const fmt = new Intl.DateTimeFormat(\"en-GB\", {\r\n    timeZone: eventTimeZone,\r\n    hour: \"2-digit\",\r\n    minute: \"2-digit\",\r\n    hour12: false\r\n  });\r\n  const parts = fmt.formatToParts(now);\r\n  const h = Number(parts.find(p => p.type === \"hour\")?.value || 0);\r\n  const m = Number(parts.find(p => p.type === \"minute\")?.value || 0);\r\n  return (h * 60) + m;\r\n}\r\n\r\n\/** No gating \u2014 both days always available *\/\r\nfunction isTomorrowAvailable(){ return true; }\r\n\r\n\/** Desk-heavy schedule (starts 08:00) *\/\r\nfunction deskSchedule(){\r\n  return [\r\n    { type:\"desk\",  title:\"Table Autographs\", start:\"08:00\", end:\"11:00\" },\r\n    { type:\"photo\", title:\"Solo Photos\",      start:\"11:00\", end:\"11:30\" },\r\n    { type:\"desk\",  title:\"Table Autographs\", start:\"11:30\", end:\"12:30\" },\r\n    { type:\"lunch\", title:\"Lunch\",            start:\"12:30\", end:\"13:30\" },\r\n    { type:\"desk\",  title:\"Table Autographs\", start:\"13:30\", end:\"17:30\" }\r\n  ];\r\n}\r\n\r\n\/** Photo-heavy schedule (starts 08:00) *\/\r\nfunction photoSchedule(){\r\n  return [\r\n    { type:\"photo\", title:\"Solo Photos\",      start:\"08:00\", end:\"09:30\" },\r\n    { type:\"desk\",  title:\"Table Autographs\", start:\"09:30\", end:\"11:00\" },\r\n    { type:\"photo\", title:\"Group Photos\",     start:\"11:00\", end:\"12:30\" },\r\n    { type:\"lunch\", title:\"Lunch\",            start:\"12:30\", end:\"13:30\" },\r\n    { type:\"photo\", title:\"Solo Photos\",      start:\"13:30\", end:\"15:00\" },\r\n    { type:\"desk\",  title:\"Table Autographs\", start:\"15:00\", end:\"17:30\" }\r\n  ];\r\n}\r\n\r\n\/** Guests (mixture of desk + photo) across Today & Tomorrow *\/\r\nconst guests = [\r\n  {\r\n    \"name\": \"Brant Daugherty\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"10:45\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"PLL Group Photo 1\",\r\n        \"start\": \"10:45\",\r\n        \"end\": \"10:55\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"10:55\",\r\n        \"end\": \"12:40\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session\",\r\n        \"start\": \"12:40\",\r\n        \"end\": \"12:50\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:50\",\r\n        \"end\": \"13:50\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:50\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Brendan Robinson\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"10:45\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"PLL Group Session 1\",\r\n        \"start\": \"10:45\",\r\n        \"end\": \"10:55\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"10:55\",\r\n        \"end\": \"12:30\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:30\",\r\n        \"end\": \"13:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:30\",\r\n        \"end\": \"15:00\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"15:00\",\r\n        \"end\": \"15:10\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"15:10\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Brenna D'Amico\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"12:00\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Descendants Trio Session 1\",\r\n        \"start\": \"12:00\",\r\n        \"end\": \"12:10\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"12:10\",\r\n        \"end\": \"12:20\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:20\",\r\n        \"end\": \"13:20\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:20\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Brian Krause\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"11:15\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Charmed Duo Photo 1\",\r\n        \"start\": \"11:15\",\r\n        \"end\": \"11:25\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"11:25\",\r\n        \"end\": \"11:35\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"11:35\",\r\n        \"end\": \"12:30\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:30\",\r\n        \"end\": \"13:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:30\",\r\n        \"end\": \"14:15\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"14:15\",\r\n        \"end\": \"14:25\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Charmed Duo Photo 2\",\r\n        \"start\": \"14:25\",\r\n        \"end\": \"14:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"14:30\",\r\n        \"end\": \"15:30\"\r\n      },\r\n      {\r\n        \"type\": \"panel\",\r\n        \"title\": \"Q&A Stage Panel\",\r\n        \"start\": \"15:30\",\r\n        \"end\": \"16:00\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"16:00\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Callum Kerr\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"11:50\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"11:50\",\r\n        \"end\": \"12:00\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"One Piece Group Photo 1\",\r\n        \"start\": \"12:00\",\r\n        \"end\": \"12:05\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:05\",\r\n        \"end\": \"13:05\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:05\",\r\n        \"end\": \"13:45\"\r\n      },\r\n      {\r\n        \"type\": \"panel\",\r\n        \"title\": \"Q&A Stage Panel\",\r\n        \"start\": \"13:45\",\r\n        \"end\": \"14:15\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"14:15\",\r\n        \"end\": \"14:30\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"14:30\",\r\n        \"end\": \"14:35\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"14:35\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Clayton Royal Johnson\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"11:40\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"11:40\",\r\n        \"end\": \"11:50\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"11:50\",\r\n        \"end\": \"12:20\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:20\",\r\n        \"end\": \"13:20\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:20\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Clive Russell\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"11:45\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"11:45\",\r\n        \"end\": \"11:55\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"One Piece Group Photo 1\",\r\n        \"start\": \"12:00\",\r\n        \"end\": \"12:05\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:05\",\r\n        \"end\": \"13:05\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:05\",\r\n        \"end\": \"13:45\"\r\n      },\r\n      {\r\n        \"type\": \"panel\",\r\n        \"title\": \"Q&A Stage Panel\",\r\n        \"start\": \"13:45\",\r\n        \"end\": \"14:15\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"14:15\",\r\n        \"end\": \"14:40\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"14:40\",\r\n        \"end\": \"14:45\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"14:45\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Cote de Pablo\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"10:20\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"NCIS Duo Session 1\",\r\n        \"start\": \"10:20\",\r\n        \"end\": \"10:50\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"10:50\",\r\n        \"end\": \"11:10\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"11:10\",\r\n        \"end\": \"12:00\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:00\",\r\n        \"end\": \"12:45\"\r\n      },\r\n      {\r\n        \"type\": \"panel\",\r\n        \"title\": \"Q&A Stage Panel\",\r\n        \"start\": \"12:45\",\r\n        \"end\": \"13:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:30\",\r\n        \"end\": \"15:10\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"NCIS Duo Session 2\",\r\n        \"start\": \"15:10\",\r\n        \"end\": \"15:20\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"15:20\",\r\n        \"end\": \"15:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"15:30\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Ethan Suplee\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"12:30\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:30\",\r\n        \"end\": \"13:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:30\",\r\n        \"end\": \"15:00\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Mallrats Trio Photo 1\",\r\n        \"start\": \"15:00\",\r\n        \"end\": \"15:05\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"My Name Is Earl Duo 1\",\r\n        \"start\": \"15:05\",\r\n        \"end\": \"15:15\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"15:15\",\r\n        \"end\": \"15:25\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"15:25\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Evangeline Lilly\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"12:20\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"12:20\",\r\n        \"end\": \"12:40\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"The Hobbit Group Photo 1\",\r\n        \"start\": \"12:40\",\r\n        \"end\": \"12:50\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:50\",\r\n        \"end\": \"13:50\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:50\",\r\n        \"end\": \"15:50\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"15:50\",\r\n        \"end\": \"16:00\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"16:00\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Graham McTavish\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"10:40\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"10:40\",\r\n        \"end\": \"10:50\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"10:50\",\r\n        \"end\": \"12:40\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"The Hobbits Group Session 1\",\r\n        \"start\": \"12:40\",\r\n        \"end\": \"12:50\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"12:50\",\r\n        \"end\": \"12:55\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:55\",\r\n        \"end\": \"13:55\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:55\",\r\n        \"end\": \"14:30\"\r\n      },\r\n      {\r\n        \"type\": \"panel\",\r\n        \"title\": \"Q&A Stage Panel\",\r\n        \"start\": \"14:30\",\r\n        \"end\": \"15:15\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"15:15\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Holly Marie Combs\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"10:45\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"PLL Group Photo 1\",\r\n        \"start\": \"10:45\",\r\n        \"end\": \"10:55\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"11:00\",\r\n        \"end\": \"11:15\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Charmed Duo Photo 1\",\r\n        \"start\": \"11:15\",\r\n        \"end\": \"11:25\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"11:10\",\r\n        \"end\": \"12:20\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:20\",\r\n        \"end\": \"13:20\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:20\",\r\n        \"end\": \"14:25\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Charmed Duo Photo 2\",\r\n        \"start\": \"14:25\",\r\n        \"end\": \"14:30\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"14:30\",\r\n        \"end\": \"14:35\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Montgomery Duo Photo 1\",\r\n        \"start\": \"14:35\",\r\n        \"end\": \"14:40\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"14:40\",\r\n        \"end\": \"15:30\"\r\n      },\r\n      {\r\n        \"type\": \"panel\",\r\n        \"title\": \"Q&A Stage Panel\",\r\n        \"start\": \"15:30\",\r\n        \"end\": \"16:00\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"16:00\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Ian Harding\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"10:30\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Ezra & Aria Duo Photo 1\",\r\n        \"start\": \"10:30\",\r\n        \"end\": \"10:45\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"PLL Group Photo 1\",\r\n        \"start\": \"10:45\",\r\n        \"end\": \"10:55\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"PLL Trio Photo 1\",\r\n        \"start\": \"10:55\",\r\n        \"end\": \"11:05\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"11:05\",\r\n        \"end\": \"11:25\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"11:25\",\r\n        \"end\": \"12:30\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:30\",\r\n        \"end\": \"13:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:30\",\r\n        \"end\": \"14:25\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Ezra & Aria Duo Photo 2\",\r\n        \"start\": \"14:25\",\r\n        \"end\": \"14:35\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"14:40\",\r\n        \"end\": \"14:45\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"14:45\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Jason Lee\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"12:30\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:30\",\r\n        \"end\": \"13:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:30\",\r\n        \"end\": \"14:40\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"14:45\",\r\n        \"end\": \"15:00\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Mallrats Trio Photo 1\",\r\n        \"start\": \"15:00\",\r\n        \"end\": \"15:05\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"My Name Is Earl Duo 1\",\r\n        \"start\": \"15:05\",\r\n        \"end\": \"15:15\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"15:15\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Jazzara Jaslyn\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"12:00\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"One Piece Group Photo 1\",\r\n        \"start\": \"12:00\",\r\n        \"end\": \"12:05\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"12:05\",\r\n        \"end\": \"12:10\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:10\",\r\n        \"end\": \"13:10\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:10\",\r\n        \"end\": \"13:45\"\r\n      },\r\n      {\r\n        \"type\": \"panel\",\r\n        \"title\": \"Q&A Stage Panel\",\r\n        \"start\": \"13:45\",\r\n        \"end\": \"14:15\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"14:15\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Jedidiah Goodacre\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"11:50\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"11:50\",\r\n        \"end\": \"12:00\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Descendants Trio Session 1\",\r\n        \"start\": \"12:00\",\r\n        \"end\": \"12:10\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:10\",\r\n        \"end\": \"13:10\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:10\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Katie Griffin\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"10:00\"\r\n      },\r\n      {\r\n        \"type\": \"panel\",\r\n        \"title\": \"Q&A Stage Panel\",\r\n        \"start\": \"10:00\",\r\n        \"end\": \"10:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"10:30\",\r\n        \"end\": \"13:55\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:55\",\r\n        \"end\": \"13:55\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Sailor Moon Duo Photo 1\",\r\n        \"start\": \"14:00\",\r\n        \"end\": \"14:05\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"14:05\",\r\n        \"end\": \"14:10\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"14:10\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Keegan Allen\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"10:45\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"PLL Group Photo 1\",\r\n        \"start\": \"10:45\",\r\n        \"end\": \"10:55\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"PLL Trio Photo 1\",\r\n        \"start\": \"10:55\",\r\n        \"end\": \"11:05\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"11:05\",\r\n        \"end\": \"12:30\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:30\",\r\n        \"end\": \"13:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:30\",\r\n        \"end\": \"14:10\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"14:10\",\r\n        \"end\": \"14:15\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"14:15\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Lesley Fera\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"10:45\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"PLL Group Photo 1\",\r\n        \"start\": \"10:45\",\r\n        \"end\": \"10:55\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"10:55\",\r\n        \"end\": \"12:00\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:00\",\r\n        \"end\": \"13:00\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:00\",\r\n        \"end\": \"14:50\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"14:50\",\r\n        \"end\": \"15:00\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"15:00\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Adam Brown\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"10:50\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"10:50\",\r\n        \"end\": \"11:00\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"11:00\",\r\n        \"end\": \"12:35\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"12:35\",\r\n        \"end\": \"12:40\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"The Hobbit Group Session 1\",\r\n        \"start\": \"12:40\",\r\n        \"end\": \"12:50\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:50\",\r\n        \"end\": \"13:50\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:50\",\r\n        \"end\": \"14:30\"\r\n      },\r\n      {\r\n        \"type\": \"panel\",\r\n        \"title\": \"Q&A Stage Panel\",\r\n        \"start\": \"14:30\",\r\n        \"end\": \"15:15\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"15:15\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Renee Humphrey\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"11:40\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"11:40\",\r\n        \"end\": \"12:30\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:30\",\r\n        \"end\": \"13:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:30\",\r\n        \"end\": \"15:00\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Mallrats Trio Photo 1\",\r\n        \"start\": \"15:00\",\r\n        \"end\": \"15:05\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"15:05\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Richard Armitage\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"12:40\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Hobbit Group Session 1\",\r\n        \"start\": \"12:40\",\r\n        \"end\": \"12:50\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"12:50\",\r\n        \"end\": \"13:15\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"13:15\",\r\n        \"end\": \"14:15\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"14:15\",\r\n        \"end\": \"14:30\"\r\n      },\r\n      {\r\n        \"type\": \"panel\",\r\n        \"title\": \"Q&A Stage Panel\",\r\n        \"start\": \"14:30\",\r\n        \"end\": \"15:15\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"15:25\",\r\n        \"end\": \"15:45\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"15:45\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Shawn Fonteno\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"11:20\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"GTA V Photo Session 1\",\r\n        \"start\": \"11:20\",\r\n        \"end\": \"11:30\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"11:30\",\r\n        \"end\": \"11:40\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"11:40\",\r\n        \"end\": \"12:40\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:40\",\r\n        \"end\": \"13:40\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:40\",\r\n        \"end\": \"15:40\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"GTA V Photo Session 2\",\r\n        \"start\": \"15:40\",\r\n        \"end\": \"15:45\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"15:45\",\r\n        \"end\": \"15:50\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"15:50\",\r\n        \"end\": \"16:15\"\r\n      },\r\n      {\r\n        \"type\": \"panel\",\r\n        \"title\": \"Q&A Stage Panel\",\r\n        \"start\": \"16:15\",\r\n        \"end\": \"17:00\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"17:00\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Steven Ogg\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"11:10\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"11:10\",\r\n        \"end\": \"11:20\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"GTA V Photo Session 1\",\r\n        \"start\": \"11:20\",\r\n        \"end\": \"11:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"11:30\",\r\n        \"end\": \"12:40\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:40\",\r\n        \"end\": \"13:40\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:40\",\r\n        \"end\": \"15:30\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"15:30\",\r\n        \"end\": \"15:40\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"GTA V Photo Session 2\",\r\n        \"start\": \"15:40\",\r\n        \"end\": \"15:45\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"15:45\",\r\n        \"end\": \"16:15\"\r\n      },\r\n      {\r\n        \"type\": \"panel\",\r\n        \"title\": \"Q&A Stage Panel\",\r\n        \"start\": \"16:15\",\r\n        \"end\": \"17:00\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"17:00\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Sylvester McCoy\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"12:00\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:00\",\r\n        \"end\": \"12:40\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"The Hobbit Group Photo 1\",\r\n        \"start\": \"12:40\",\r\n        \"end\": \"12:50\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"12:50\",\r\n        \"end\": \"13:05\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:05\",\r\n        \"end\": \"14:30\"\r\n      },\r\n      {\r\n        \"type\": \"panel\",\r\n        \"title\": \"Q&A Stage Panel\",\r\n        \"start\": \"14:30\",\r\n        \"end\": \"15:15\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"15:15\",\r\n        \"end\": \"15:45\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"15:45\",\r\n        \"end\": \"15:50\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"15:50\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Tom Payne\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"12:15\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:15\",\r\n        \"end\": \"13:15\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:15\",\r\n        \"end\": \"15:30\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"15:30\",\r\n        \"end\": \"15:45\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"15:45\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Ty Keogh\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"12:00\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"One Piece Group Photo 1\",\r\n        \"start\": \"12:00\",\r\n        \"end\": \"12:05\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"12:05\",\r\n        \"end\": \"12:10\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:10\",\r\n        \"end\": \"13:10\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:10\",\r\n        \"end\": \"13:45\"\r\n      },\r\n      {\r\n        \"type\": \"panel\",\r\n        \"title\": \"Q&A Stage Panel\",\r\n        \"start\": \"13:45\",\r\n        \"end\": \"14:15\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"14:15\",\r\n        \"end\": \"14:35\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"14:35\",\r\n        \"end\": \"14:40\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"14:40\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Tyler Blackburn\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"10:45\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"PLL Group Photo 1\",\r\n        \"start\": \"10:45\",\r\n        \"end\": \"10:55\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"PLL Trio Photo 1\",\r\n        \"start\": \"10:55\",\r\n        \"end\": \"11:05\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"11:05\",\r\n        \"end\": \"12:30\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:30\",\r\n        \"end\": \"13:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:30\",\r\n        \"end\": \"14:15\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"14:15\",\r\n        \"end\": \"14:25\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"14:25\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Linda Ballantyne\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"10:00\"\r\n      },\r\n      {\r\n        \"type\": \"panel\",\r\n        \"title\": \"Q&A Stage Panel\",\r\n        \"start\": \"10:00\",\r\n        \"end\": \"10:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"10:30\",\r\n        \"end\": \"12:55\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:55\",\r\n        \"end\": \"13:55\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"13:55\",\r\n        \"end\": \"14:00\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Sailor Moon Duo Photo 1\",\r\n        \"start\": \"14:00\",\r\n        \"end\": \"14:05\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"14:05\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Lucy Hale\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"10:00\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"10:00\",\r\n        \"end\": \"10:30\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Ezra & Aria Duo Photo 1\",\r\n        \"start\": \"10:30\",\r\n        \"end\": \"10:45\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"PLL Group Photo 1\",\r\n        \"start\": \"10:45\",\r\n        \"end\": \"10:55\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"10:55\",\r\n        \"end\": \"12:30\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:30\",\r\n        \"end\": \"13:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:30\",\r\n        \"end\": \"14:10\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"14:10\",\r\n        \"end\": \"14:25\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Ezra & Aria Duo Photo 2\",\r\n        \"start\": \"14:25\",\r\n        \"end\": \"14:35\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Montgomery Duo Photo 1\",\r\n        \"start\": \"14:35\",\r\n        \"end\": \"14:40\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"14:40\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Malcolm David Kelley\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"12:00\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:00\",\r\n        \"end\": \"13:00\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:00\",\r\n        \"end\": \"15:20\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"15:20\",\r\n        \"end\": \"15:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"15:30\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Michael Weatherly\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"10:00\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"10:00\",\r\n        \"end\": \"10:20\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"NCIS Duo Session 1\",\r\n        \"start\": \"10:20\",\r\n        \"end\": \"10:50\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"10:50\",\r\n        \"end\": \"12:00\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:00\",\r\n        \"end\": \"12:45\"\r\n      },\r\n      {\r\n        \"type\": \"panel\",\r\n        \"title\": \"Q&A Stage Panel\",\r\n        \"start\": \"12:45\",\r\n        \"end\": \"13:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:30\",\r\n        \"end\": \"15:00\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"15:00\",\r\n        \"end\": \"15:10\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"NCIS Duo Session 2\",\r\n        \"start\": \"15:10\",\r\n        \"end\": \"15:20\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"15:20\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Mitchell Hope\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"12:00\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Descendants Trio Session 1\",\r\n        \"start\": \"12:00\",\r\n        \"end\": \"12:10\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"12:10\",\r\n        \"end\": \"12:20\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:20\",\r\n        \"end\": \"13:20\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:20\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Ned Luke\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"11:20\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"GTA V Photo Session 1\",\r\n        \"start\": \"11:20\",\r\n        \"end\": \"11:30\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"11:30\",\r\n        \"end\": \"11:40\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"11:40\",\r\n        \"end\": \"12:40\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:40\",\r\n        \"end\": \"13:40\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:40\",\r\n        \"end\": \"15:40\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"GTA V Photo Session 2\",\r\n        \"start\": \"15:40\",\r\n        \"end\": \"15:45\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"15:45\",\r\n        \"end\": \"15:50\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"15:50\",\r\n        \"end\": \"16:15\"\r\n      },\r\n      {\r\n        \"type\": \"panel\",\r\n        \"title\": \"Q&A Stage Panel\",\r\n        \"start\": \"16:15\",\r\n        \"end\": \"17:00\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"17:00\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Nia Peeples\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"10:45\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"PLL Group Photo 1\",\r\n        \"start\": \"10:45\",\r\n        \"end\": \"10:55\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"10:55\",\r\n        \"end\": \"12:00\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:00\",\r\n        \"end\": \"13:00\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:00\",\r\n        \"end\": \"15:10\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"15:10\",\r\n        \"end\": \"15:20\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"15:20\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  },\r\n  {\r\n    \"name\": \"Peter Capaldi\",\r\n    \"dayOffset\": 0,\r\n    \"schedule\": [\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"09:30\",\r\n        \"end\": \"10:00\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 1\",\r\n        \"start\": \"10:00\",\r\n        \"end\": \"10:40\"\r\n      },\r\n      {\r\n        \"type\": \"panel\",\r\n        \"title\": \"Q&A Stage Panel\",\r\n        \"start\": \"10:45\",\r\n        \"end\": \"11:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"11:30\",\r\n        \"end\": \"12:30\"\r\n      },\r\n      {\r\n        \"type\": \"lunch\",\r\n        \"title\": \"Lunch\",\r\n        \"start\": \"12:30\",\r\n        \"end\": \"13:30\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"13:30\",\r\n        \"end\": \"14:40\"\r\n      },\r\n      {\r\n        \"type\": \"photo\",\r\n        \"title\": \"Solo Photo Session 2\",\r\n        \"start\": \"14:40\",\r\n        \"end\": \"14:55\"\r\n      },\r\n      {\r\n        \"type\": \"desk\",\r\n        \"title\": \"Table Autographs\",\r\n        \"start\": \"14:55\",\r\n        \"end\": \"17:30\"\r\n      }\r\n    ]\r\n  }\r\n];\r\n\r\n\r\n\r\nlet activeDay = \"today\";\r\nlet activeFilter = \"all\";\r\n\r\nfunction mapType(type){\r\n  return {\r\n    desk:  [\"At Desk\",        \"is-desk\"],\r\n    photo: [\"Photoshoot\",     \"is-photo\"],\r\n    panel: [\"Panel\",          \"is-panel\"],\r\n    lunch: [\"Away for Lunch\", \"is-lunch\"],\r\n    travel:[\"On the Way\",     \"is-travel\"],\r\n    away:  [\"Away\",           \"is-away\"]\r\n  }[type] || [\"Away\", \"is-away\"];\r\n}\r\n\r\nconst TRAVEL_TYPE = \"travel\";\r\nconst TRAVEL_TITLE = \"On the Way\";\r\nconst TRAVEL_MAX_MINS = 5;\r\n\r\nfunction pad2(n){ return String(n).padStart(2, \"0\"); }\r\nfunction minsToTime(mins){\r\n  const h = Math.floor(mins \/ 60);\r\n  const m = mins % 60;\r\n  return `${pad2(h)}:${pad2(m)}`;\r\n}\r\n\r\n\/**\r\n * Inserts a short \"travel\" slot ONLY when:\r\n * - the next session exists\r\n * - the session type changes\r\n * - and there is a real gap (no overlap, no shifting times)\r\n *\r\n * Travel length is up to 5 mins, but never overlaps the next start.\r\n *\/\r\nfunction augmentScheduleWithTravel(schedule){\r\n  if(!Array.isArray(schedule) || schedule.length === 0) return [];\r\n  const sorted = [...schedule].sort((a,b)=>toMins(a.start)-toMins(b.start));\r\n  const out = [];\r\n\r\n  for(let i=0;i<sorted.length;i++){\r\n    const curr = sorted[i];\r\n    out.push(curr);\r\n\r\n    const next = sorted[i+1];\r\n    if(!next) continue;\r\n\r\n    const currEnd = toMins(curr.end);\r\n    const nextStart = toMins(next.start);\r\n    const gap = nextStart - currEnd;\r\n    const typeChanged = (curr.type || \"\") !== (next.type || \"\");\r\n\r\n    if(typeChanged && gap > 0){\r\n      const travelEnd = Math.min(currEnd + TRAVEL_MAX_MINS, nextStart);\r\n      if(travelEnd > currEnd){\r\n        out.push({\r\n          type: TRAVEL_TYPE,\r\n          title: TRAVEL_TITLE,\r\n          start: minsToTime(currEnd),\r\n          end: minsToTime(travelEnd)\r\n        });\r\n      }\r\n    }\r\n  }\r\n  return out;\r\n}\r\n\r\nfunction statusFor(schedule){\r\n  const now = getNowMinsInTZ();\r\n  const sorted = [...schedule].sort((a,b)=>toMins(a.start)-toMins(b.start));\r\n  const active = sorted.find(s => now >= toMins(s.start) && now < toMins(s.end));\r\n  return active || null;\r\n}\r\n\r\nconst grid = document.getElementById(\"grid\");\r\nconst search = document.getElementById(\"search\");\r\n\r\nfunction formatShortDate(d){\r\n  const opts = { weekday:\"short\", day:\"2-digit\", month:\"short\" };\r\n  return d.toLocaleDateString(\"en-GB\", opts);\r\n}\r\nfunction setDayButtonLabels(){\r\n  try{\r\n    const now = new Date();\r\n    const today = new Date(now.getFullYear(), now.getMonth(), now.getDate());\r\n    const tomorrow = new Date(today);\r\n    tomorrow.setDate(today.getDate() + 1);\r\n\r\n    const t1 = `Today (${formatShortDate(today)})`;\r\n    const t2 = `Tomorrow (${formatShortDate(tomorrow)})`;\r\n\r\n    const b1 = document.getElementById(\"btnToday\");\r\n    const b2 = document.getElementById(\"btnTomorrow\");\r\n    if(b1) b1.textContent = t1;\r\n    if(b2) b2.textContent = t2;\r\n  }catch(e){}\r\n}\r\n\r\nconst btnToday = document.getElementById(\"btnToday\");\r\nconst btnTomorrow = document.getElementById(\"btnTomorrow\");\r\n\r\nsetDayButtonLabels();\r\nconst tomorrowHint = document.getElementById(\"tomorrowHint\");\r\n\r\nfunction updateDayToggleVisibility(){\r\n  \/\/ TODAY ONLY\r\n  if(btnTomorrow) btnTomorrow.style.display = \"none\";\r\n  if(tomorrowHint) tomorrowHint.style.display = \"none\";\r\n}\r\n\r\nfunction render(){\r\n  updateDayToggleVisibility();\r\n\r\n  const dayOffset = 0; \/\/ TODAY ONLY\r\n  grid.innerHTML = \"\";\r\n\r\n  const dayGuests = guests.filter(g => Number(g.dayOffset) === Number(dayOffset));\r\n\r\n  (dayGuests.length ? dayGuests : guests)\r\n    .forEach(g => {\r\n      const sched = augmentScheduleWithTravel(g.schedule);\r\n      const s = statusFor(sched);\r\n      const [label, cls] = s ? mapType(s.type) : [\"Away\", \"is-away\"];\r\n\r\n      const card = document.createElement(\"div\");\r\n      card.className = \"card\";\r\n      card.dataset.filter = s ? s.type : \"away\";\r\n      card.dataset.name = g.name.toLowerCase();\r\n\r\n      const current = statusFor(sched);\r\n      const slotTitle = current ? current.title : \"Unavailable\";\r\n      const slotTime  = current ? (current.start + \" \u2013 \" + current.end) : \"\";\r\n\r\n      const fullScheduleHTML = sched.map(slot => {\r\n        return `\r\n          <div class=\"scheduleRow\">\r\n            <span class=\"scheduleType\">${slot.title}<\/span>\r\n            <span>${slot.start} \u2013 ${slot.end}<\/span>\r\n          <\/div>\r\n        `;\r\n      }).join(\"\");\r\n\r\n      card.innerHTML = `\r\n        <div class=\"top\">\r\n          <div>\r\n            <div class=\"name\">${g.name}<\/div>\r\n            <div class=\"day\">Today<\/div>\r\n          <\/div>\r\n          <div class=\"badge ${cls}\">\r\n            ${label}\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"currentSlot\" aria-label=\"Current availability slot\">\r\n          <span class=\"title\">${slotTitle}<\/span>\r\n          <span class=\"time\">${slotTime}<\/span>\r\n        <\/div>\r\n\r\n        <button class=\"toggleSchedule\" aria-expanded=\"false\">View full schedule<\/button>\r\n\r\n        <div class=\"fullSchedule\" data-open=\"false\" aria-label=\"Full schedule\">\r\n          ${fullScheduleHTML}\r\n        <\/div>\r\n      `;\r\n\r\n      \/\/ Expand \/ collapse (auto-close others)\r\n      const toggleBtn = card.querySelector(\".toggleSchedule\");\r\n      const fullSchedule = card.querySelector(\".fullSchedule\");\r\n\r\n      toggleBtn.addEventListener(\"click\", () => {\r\n        const isOpen = fullSchedule.dataset.open === \"true\";\r\n\r\n        \/\/ Close all other open schedules\r\n        document.querySelectorAll(\".fullSchedule[data-open='true']\").forEach(el => {\r\n          if (el !== fullSchedule) {\r\n            el.dataset.open = \"false\";\r\n            const parentCard = el.closest(\".card\");\r\n            if (parentCard) {\r\n              const btn = parentCard.querySelector(\".toggleSchedule\");\r\n              if (btn) {\r\n                btn.textContent = \"View full schedule\";\r\n                btn.setAttribute(\"aria-expanded\", \"false\");\r\n              }\r\n            }\r\n          }\r\n        });\r\n\r\n        \/\/ Toggle this one\r\n        fullSchedule.dataset.open = isOpen ? \"false\" : \"true\";\r\n        toggleBtn.textContent = isOpen ? \"View full schedule\" : \"Close schedule\";\r\n        toggleBtn.setAttribute(\"aria-expanded\", isOpen ? \"false\" : \"true\");\r\n      });\r\n\r\n      grid.appendChild(card);\r\n    });\r\n\r\n  applyFilters();\r\n}\r\n\r\nfunction applyFilters(){\r\n  const q = search.value.trim().toLowerCase();\r\n  document.querySelectorAll(\".card\").forEach(c => {\r\n    const okName = c.dataset.name.includes(q);\r\n    const okFilter = activeFilter === \"all\" || c.dataset.filter === activeFilter;\r\n    c.style.display = (okName && okFilter) ? \"\" : \"none\";\r\n  });\r\n}\r\n\r\n\/\/ Day toggle clicks\r\ndocument.querySelectorAll(\".dayBtn\").forEach(b => {\r\n  b.addEventListener(\"click\", () => {\r\n    \/\/ If tomorrow is hidden, ignore clicks (safety)\r\n    if(b.dataset.day === \"tomorrow\" && !isTomorrowAvailable()) return;\r\n\r\n    document.querySelectorAll(\".dayBtn\").forEach(x => x.dataset.active=\"false\");\r\n    b.dataset.active=\"true\";\r\n    activeDay = b.dataset.day;\r\n    render();\r\n  });\r\n});\r\n\r\n\/\/ Status filter bar\r\ndocument.getElementById(\"filterRow\").addEventListener(\"click\", e => {\r\n  const b = e.target.closest(\".fbtn\");\r\n  if(!b) return;\r\n\r\n  document.querySelectorAll(\".fbtn\").forEach(x => x.dataset.active=\"false\");\r\n  b.dataset.active=\"true\";\r\n  activeFilter = b.dataset.filter;\r\n\r\n  applyFilters();\r\n});\r\n\r\n\/\/ Search\r\nsearch.addEventListener(\"input\", applyFilters);\r\n\r\n\/\/ Init\r\nrender();\r\nsetInterval(render, 60000);\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-d75dc02 e-flex e-con-boxed e-con e-parent\" data-id=\"d75dc02\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4e94e8f elementor-widget elementor-widget-html\" data-id=\"4e94e8f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n    h5 {\n    font-size: 1.72rem;\n    text-align: center;\n}\n.elementor-39639 .elementor-element.elementor-element-35beb06 {\n    padding: 0px;\n}\n<\/style>\n\n<style>\n:root{\n  --bg:#ffffff;\n  --text:#111;\n  --muted:#6b7280;\n  --card:#f6f7f9;\n  --border:#e5e7eb;\n\n  --desk:#16a34a;\n  --photo:#2563eb;\n  --panel:#9333ea;\n  --lunch:#f59e0b;\n  --away:#9ca3af;\n}\n\n\n\n.controls{\n  display:flex;\n  gap:10px;\n  flex-wrap:wrap;\n  align-items:center;\n}\n\n.search{\n  flex:1;\n  border:1px solid var(--border);\n  border-radius:12px;\n  padding:10px 12px;\n  font-size:14px;\n  min-width:200px;\n}\n\n\/* Day toggle *\/\n.dayToggle{\n  display:flex;\n  gap:8px;\n}\n\n.dayBtn{\n  border:1px solid var(--border);\n  background:#fff;\n  border-radius:12px;\n  padding:10px 14px;\n  font-weight:700;\n  cursor:pointer;\n}\n\n.dayBtn[data-active=\"true\"]{\n  background:#111;\n  color:#fff;\n}\n\n.dayBtn[disabled]{\n  opacity: .45;\n  cursor:not-allowed;\n}\n\n.grid{\n  display:grid;\n  grid-template-columns:repeat(3,1fr);\n  gap:14px;\n}\n\n@media(max-width:900px){\n  .grid{grid-template-columns:repeat(2,1fr);}\n}\n@media(max-width:600px){\n  .grid{grid-template-columns:1fr;}\n}\n\n.card{\n  background:var(--card);\n  border:1px solid var(--border);\n  border-radius:14px;\n  padding:14px;\n  display:grid;\n  gap:12px;\n}\n\n.top{\n  display:flex;\n  justify-content:space-between;\n  gap:10px;\n}\n\n.name{\n  font-weight:800;\n  line-height:1.2;\n}\n\n.day{\n  font-size:12px;\n  color:var(--muted);\n  margin-top:4px;\n}\n\n.badge{\n  display:flex;\n  align-items:center;\n  gap:8px;\n  padding:8px 12px;\n  border-radius:999px;\n  font-size:13px;\n  font-weight:800;\n  color:#fff;\n  white-space:nowrap;\n}\n\n.dot{\n  width:8px;\n  height:8px;\n  border-radius:50%;\n  background:#fff;\n}\n\n.is-desk{background:var(--desk)}\n.is-photo{background:var(--photo)}\n.is-panel{background:var(--panel)}\n.is-lunch{background:var(--lunch)}\n.is-away{background:var(--away)}\n\n.bottomBar{\n  position:fixed;\n  left:0;\n  right:0;\n  bottom:0;\n  background:rgba(255,255,255,.95);\n  backdrop-filter:blur(10px);\n  -webkit-backdrop-filter:blur(10px);\n  border-top:1px solid var(--border);\n  padding:10px;\n  z-index:999;\n  padding-bottom: calc(10px + env(safe-area-inset-bottom));\n}\n\n.filterRow{\n  display:flex;\n  gap:8px;\n  overflow-x:auto;\n  -webkit-overflow-scrolling:touch;\n  scrollbar-width:none;\n}\n.filterRow::-webkit-scrollbar{display:none;}\n\n.fbtn{\n  border:1px solid var(--border);\n  background:#fff;\n  border-radius:14px;\n  padding:12px 14px;\n  min-height:48px;\n  font-weight:700;\n  cursor:pointer;\n  white-space:nowrap;\n  flex:0 0 auto;\n}\n\n.fbtn[data-active=\"true\"]{\n  background:#111;\n  color:#fff;\n}\n\n\/* A little helper label when Tomorrow is hidden *\/\n.hint{\n  font-size: 12px;\n  color: var(--muted);\n}\n\n\/* Current slot line *\/\n.currentSlot{\n  margin-top: 8px;\n  display:flex;\n  justify-content:space-between;\n  gap:10px;\n  padding:8px 10px;\n  border-radius:12px;\n  border:1px solid var(--border);\n  background:#fff;\n  font-size:13px;\n}\n.currentSlot .title{ font-weight:800; }\n.currentSlot .time{ color:var(--muted); font-weight:700; white-space:nowrap; }\n\n\/* Expand \/ collapse (accordion) *\/\n.toggleSchedule{\n  background:#fff;\n  border:1px solid var(--border);\n  border-radius:12px;\n  padding:10px 12px;\n  font-size:13px;\n  font-weight:700;\n  cursor:pointer;\n  text-align:center;\n}\n\n\/* Smooth accordion animation *\/\n.fullSchedule{\n  max-height: 0;\n  overflow: hidden;\n  margin-top: 8px;\n  border-top: 1px solid var(--border);\n  padding-top: 0;\n  opacity: 0;\n  transition: max-height .28s ease, opacity .2s ease, padding-top .2s ease;\n}\n\n.fullSchedule[data-open=\"true\"]{\n  max-height: 900px;\n  padding-top: 10px;\n  opacity: 1;\n}\n\n.scheduleRow{\n  display:flex;\n  justify-content:space-between;\n  padding:6px 0;\n  border-bottom:1px dashed var(--border);\n}\n\n.scheduleRow:last-child{\n  border-bottom:none;\n}\n\n.scheduleType{\n  font-weight:700;\n}\n\n<\/style>\n\n<style>\n.currentSlot .title {\n    font-weight: 800;\n    color: black;\n}\n.toggleSchedule {\n    background: #000;\n    border: 1px solid var(--border);\n    border-radius: 12px;\n    padding: 0px 0px;\n    font-size: 14px;\n}\n\n.dayBtn {\n    border: 1px solid var(--border);\n    background: #555;\n    border-radius: 12px;\n    margin-bottom: 16px;\n    padding: 0px 0px;\n    font-weight: 700;\n    cursor: pointer;\n}\n.elementor-39639 .elementor-element.elementor-element-d4ba605 {\n     padding: 0px;\n}\n.bottom-nav,.filterRow {\n     display: none!important;\n}\n.day {display: none;}\n.dayToggle {\n    display:none;\n}\n.card {\n    background: #000;\n}\n.controls {\n    margin-bottom: 32px;\n}\n.bottomBar {\n    display: none;\n}\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Live Schedule Sunday Guest Schedules Guests may step away from their autograph table while attending panels or photo sessions. Check the live schedule below for their current activity. Today All [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":29913,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"folder":[270],"class_list":["post-43591","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/monopolyeventshub.com\/runappnow\/wp-json\/wp\/v2\/pages\/43591","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/monopolyeventshub.com\/runappnow\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/monopolyeventshub.com\/runappnow\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/monopolyeventshub.com\/runappnow\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/monopolyeventshub.com\/runappnow\/wp-json\/wp\/v2\/comments?post=43591"}],"version-history":[{"count":23,"href":"https:\/\/monopolyeventshub.com\/runappnow\/wp-json\/wp\/v2\/pages\/43591\/revisions"}],"predecessor-version":[{"id":43625,"href":"https:\/\/monopolyeventshub.com\/runappnow\/wp-json\/wp\/v2\/pages\/43591\/revisions\/43625"}],"up":[{"embeddable":true,"href":"https:\/\/monopolyeventshub.com\/runappnow\/wp-json\/wp\/v2\/pages\/29913"}],"wp:attachment":[{"href":"https:\/\/monopolyeventshub.com\/runappnow\/wp-json\/wp\/v2\/media?parent=43591"}],"wp:term":[{"taxonomy":"folder","embeddable":true,"href":"https:\/\/monopolyeventshub.com\/runappnow\/wp-json\/wp\/v2\/folder?post=43591"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}