Skip to main content

INDEX

Constant INDEX 

Source
const INDEX: &str = "<!doctype html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1\">\n<title>xil-pipeline</title>\n<link rel=\"stylesheet\" href=\"/assets/app.css\">\n<script src=\"/assets/htmx.min.js\"></script>\n<script src=\"/assets/app.js\" defer></script>\n</head>\n<body>\n<header class=\"top\">\n  <div>\n    <h1>xil-pipeline</h1>\n    <p class=\"muted\"><b>Workspace:</b> <code>@@WORKSPACE@@</code></p>\n  </div>\n  <button type=\"button\" id=\"global-refresh-btn\" class=\"small\">\u{27f3} Refresh</button>\n</header>\n\n<nav class=\"tabs\" data-group=\"main\">\n  <button type=\"button\" data-tab=\"setup\">Setup</button>\n  <button type=\"button\" data-tab=\"project\">Project</button>\n  <button type=\"button\" data-tab=\"episodes\">Episodes</button>\n  <button type=\"button\" data-tab=\"run\">Run Stage</button>\n  <button type=\"button\" data-tab=\"speakers\">Speakers</button>\n  <button type=\"button\" data-tab=\"cast\">Cast Config</button>\n  <button type=\"button\" data-tab=\"sfx\">SFX Config</button>\n  <button type=\"button\" data-tab=\"parsed\">Edit Parsed JSON</button>\n  <button type=\"button\" data-tab=\"audio\">Audio Preview</button>\n  <button type=\"button\" data-tab=\"grading\">Audio Grading</button>\n  <button type=\"button\" data-tab=\"timeline\">Timeline</button>\n</nav>\n\n<main>\n\n<!-- \u{2500}\u{2500} Setup \u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500} -->\n<section class=\"tab\" data-group=\"main\" data-tab=\"setup\">\n  <h3>Active show</h3>\n  <p>Select which show is active. All pipeline commands will use this show\'s\n  <code>configs/{slug}/project.json</code> to resolve the show slug and season defaults.</p>\n  <form class=\"row\" hx-post=\"/setup/use\" hx-target=\"#use-show-status\">\n    <label class=\"field grow\"><span>Show</span>\n      <select name=\"show\" hx-get=\"/choices/shows\" hx-trigger=\"refresh-all from:body, job-done from:body\" hx-swap=\"innerHTML\">@@SHOW_OPTIONS@@</select>\n    </label>\n    <button class=\"primary\">\u{25b6} Use this show</button>\n  </form>\n  <div id=\"use-show-status\"></div>\n\n  <hr>\n  <h3>Initialize a new show</h3>\n  <p>Creates <code>configs/{slug}/project.json</code>, <code>speakers.json</code>, a type-specific\n  sample script, and per-show subdirectories inside <code>@@WORKSPACE@@</code>.</p>\n  <form hx-post=\"/setup/init\" hx-target=\"#init-log\">\n    <div class=\"row\">\n      <label class=\"field grow\"><span>Show name *</span><input name=\"show\" id=\"init-show-name\" placeholder=\"e.g. &quot;Night Owls&quot;\"></label>\n      <label class=\"field\"><span>Content type</span>\n        <select name=\"type\"><option>podcast</option><option>audiobook</option><option>drama</option><option>special</option></select>\n      </label>\n    </div>\n    <div class=\"row\">\n      <label class=\"field\"><span>Season number (optional)</span><input name=\"season\" placeholder=\"e.g. 1\"></label>\n      <label class=\"field grow\"><span>Season title (optional)</span><input name=\"season_title\" placeholder=\"e.g. &quot;The Holiday Shift&quot;\"></label>\n    </div>\n    <button class=\"primary\" id=\"init-create-btn\">\u{25b6} Create show</button>\n  </form>\n  <div id=\"init-log\" class=\"logwrap\"></div>\n</section>\n\n<!-- \u{2500}\u{2500} Project \u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500} -->\n<section class=\"tab\" data-group=\"main\" data-tab=\"project\">\n  <div id=\"project-panel\" hx-get=\"/project\" hx-trigger=\"load, project-changed from:body, refresh-all from:body\"></div>\n</section>\n\n<!-- \u{2500}\u{2500} Episodes \u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500} -->\n<section class=\"tab\" data-group=\"main\" data-tab=\"episodes\">\n  <div id=\"episodes-table\" hx-get=\"/episodes/table\" hx-trigger=\"tab-shown from:closest section once\">\n    <p class=\"muted\">\u{23f3} Collecting episode status \u{2014} please wait\u{2026}</p>\n  </div>\n  <p class=\"muted\">\u{2713} up to date \u{b7} \u{26a0} stale (re-run needed) \u{b7} \u{25cb} not built</p>\n</section>\n\n<!-- \u{2500}\u{2500} Run Stage \u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500} -->\n<section class=\"tab\" data-group=\"main\" data-tab=\"run\">\n  <p>Run pipeline stages against an episode. <b>Dry-run is on by default</b> \u{2014} uncheck to write output files.</p>\n  <div class=\"row\">\n    <label class=\"field grow\"><span>Episode</span>\n      <select name=\"ep\" id=\"run-episode\" hx-get=\"/choices/episodes\" hx-trigger=\"refresh-all from:body, job-done from:body, scripts-changed from:body\" hx-swap=\"innerHTML\">@@EPISODE_OPTIONS@@</select>\n    </label>\n  </div>\n\n  <nav class=\"tabs sub\" data-group=\"run\">\n    <button type=\"button\" data-tab=\"scripts\">Scripts</button>\n    <button type=\"button\" data-tab=\"scan\">Scan</button>\n    <button type=\"button\" data-tab=\"parse\">Parse</button>\n    <button type=\"button\" data-tab=\"produce\">Produce</button>\n    <button type=\"button\" data-tab=\"assemble\">Assemble</button>\n    <button type=\"button\" data-tab=\"daw\">DAW</button>\n    <button type=\"button\" data-tab=\"master\">Master</button>\n  </nav>\n\n  <div class=\"tab\" data-group=\"run\" data-tab=\"scripts\">\n    <form>\n      <label class=\"field\"><span>Script Markdown</span>\n        <textarea name=\"text\" rows=\"28\" placeholder=\"Paste production script here\u{2026}\"></textarea>\n      </label>\n      <button type=\"button\" hx-post=\"/scripts/analyze\" hx-include=\"closest form\" hx-target=\"#script-meta\">Analyze Header</button>\n      <div id=\"script-meta\">@@SCRIPT_META@@</div>\n      <button type=\"button\" class=\"primary\" hx-post=\"/scripts/save\" hx-include=\"closest form\" hx-target=\"#script-status\">\u{1f4be} Save to scripts/</button>\n      <div id=\"script-status\"></div>\n    </form>\n  </div>\n\n  <div class=\"tab\" data-group=\"run\" data-tab=\"scan\">\n    <form hx-post=\"/run/scan\" hx-include=\"#run-episode\" hx-target=\"#run-stage-log\">\n      <div class=\"row\">\n        <label class=\"field grow\"><span>Script *</span>\n          <input name=\"script\" id=\"scan-script\" list=\"script-list\" autocomplete=\"off\">\n        </label>\n        @@SCAN_SPEAKERS@@\n      </div>\n      @@SCAN_JSON@@\n      <button class=\"primary\" id=\"scan-run-btn\">\u{25b6} Run Scan</button>\n    </form>\n  </div>\n\n  <div class=\"tab\" data-group=\"run\" data-tab=\"parse\">\n    <form hx-post=\"/run/parse\" hx-target=\"#run-stage-log\">\n      <div class=\"row\">\n        <label class=\"field grow\"><span>Episode (select existing or type new tag, e.g. S04E04)</span>\n          <input name=\"ep\" id=\"parse-episode\" list=\"episode-list\" autocomplete=\"off\">\n        </label>\n      </div>\n      <div class=\"row\">\n        <label class=\"field grow\"><span>Script (blank = auto-detect first .md in scripts/)</span>\n          <input name=\"script\" list=\"script-list\" autocomplete=\"off\">\n        </label>\n        @@PARSE_SPEAKERS@@\n      </div>\n      <div class=\"row\">\n        @@PARSE_OPTIONS@@\n      </div>\n      <button class=\"primary\" id=\"parse-run-btn\">\u{25b6} Run Parse</button>\n    </form>\n  </div>\n\n  <div class=\"tab\" data-group=\"run\" data-tab=\"produce\">\n    <form hx-post=\"/run/produce\" hx-include=\"#run-episode\" hx-target=\"#run-stage-log\">\n      @@PRODUCE_FORM@@\n      <button class=\"primary\" id=\"prod-run-btn\">\u{25b6} Run Produce</button>\n    </form>\n  </div>\n\n  <div class=\"tab\" data-group=\"run\" data-tab=\"assemble\">\n    <form hx-post=\"/run/assemble\" hx-include=\"#run-episode\" hx-target=\"#run-stage-log\">\n      @@ASSEMBLE_FORM@@\n      <button class=\"primary\">\u{25b6} Run Assemble</button>\n    </form>\n  </div>\n\n  <div class=\"tab\" data-group=\"run\" data-tab=\"daw\">\n    <form hx-post=\"/run/daw\" hx-include=\"#run-episode\" hx-target=\"#run-stage-log\">\n      @@DAW_FORM@@\n      <button class=\"primary\" id=\"daw-run-btn\">\u{25b6} Run DAW</button>\n    </form>\n  </div>\n\n  <div class=\"tab\" data-group=\"run\" data-tab=\"master\">\n    <form hx-post=\"/run/master\" hx-include=\"#run-episode\" hx-target=\"#run-stage-log\">\n      @@MASTER_FORM@@\n      <button class=\"primary\" id=\"master-run-btn\">\u{25b6} Run Master</button>\n    </form>\n  </div>\n\n  <datalist id=\"script-list\" hx-get=\"/choices/scripts\" hx-trigger=\"refresh-all from:body, scripts-changed from:body\" hx-swap=\"innerHTML\">@@SCRIPT_OPTIONS@@</datalist>\n  <datalist id=\"episode-list\" hx-get=\"/choices/episodes\" hx-trigger=\"refresh-all from:body, job-done from:body, scripts-changed from:body\" hx-swap=\"innerHTML\">@@EPISODE_OPTIONS@@</datalist>\n\n  <div class=\"loglabel\">Output</div>\n  <div id=\"run-stage-log\" class=\"logwrap\"><pre class=\"log\"></pre></div>\n</section>\n\n<!-- \u{2500}\u{2500} Config editors \u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500} -->\n@@CONFIG_TABS@@\n\n<!-- \u{2500}\u{2500} Edit Parsed JSON \u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500} -->\n<section class=\"tab\" data-group=\"main\" data-tab=\"parsed\">\n  <p>Edit the generated <code>parsed/&lt;show&gt;/parsed_&lt;tag&gt;.json</code> for an\n  episode. Saving writes a <code>.bak</code> beside it first \u{2014} and re-running\n  <b>Parse</b> overwrites this file.</p>\n  <!-- The select loads the chosen episode, as the config tabs do. The label\n       around it is what repopulates the option list, so the select is free\n       to carry the load. -->\n  <label class=\"field\" hx-get=\"/choices/episodes\" hx-trigger=\"refresh-all from:body, job-done from:body\" hx-target=\"#parsed-ep\" hx-swap=\"innerHTML\" hx-include=\"#parsed-ep\"><span>Episode</span>\n    <select name=\"ep\" id=\"parsed-ep\" hx-get=\"/parsed/load\" hx-trigger=\"change\" hx-target=\"#parsed-editor\" hx-swap=\"outerHTML\">@@PARSED_EPISODE_OPTIONS@@</select>\n  </label>\n\n  <nav class=\"tabs sub\" data-group=\"parsed-view\">\n    <button type=\"button\" data-tab=\"dialogue\">Dialogue</button>\n    <button type=\"button\" data-tab=\"raw\">Raw JSON</button>\n  </nav>\n\n  <div class=\"tab\" data-group=\"parsed-view\" data-tab=\"dialogue\">\n    <label class=\"field grow\"><span>Search</span>\n      <input type=\"text\" name=\"q\" id=\"dlg-q\" placeholder=\"Search speaker or text\u{2026}\"\n             hx-get=\"/parsed/dialogue\" hx-include=\"#parsed-ep,#dlg-q\" hx-vals=\'{\"page\": 0}\'\n             hx-trigger=\"keyup changed delay:300ms\" hx-target=\"#dlg-panel\">\n    </label>\n    <div id=\"dlg-panel\" hx-get=\"/parsed/dialogue\" hx-include=\"#parsed-ep,#dlg-q\"\n         hx-trigger=\"tab-shown, change from:#parsed-ep, dialogue-saved from:body\">\n      <p class=\"muted\">Select an episode above.</p>\n    </div>\n    <div id=\"parsed-entry-edit\"></div>\n  </div>\n\n  <div class=\"tab\" data-group=\"parsed-view\" data-tab=\"raw\">\n    <form id=\"parsed-form\">\n      @@PARSED_EDITOR@@\n      <div class=\"row\">\n        <button type=\"button\" class=\"small\" hx-get=\"/parsed/load\" hx-include=\"#parsed-ep\" hx-target=\"#parsed-editor\" hx-swap=\"outerHTML\">\u{21ba} Reload</button>\n        <button type=\"button\" class=\"small primary\" hx-post=\"/parsed/save\" hx-include=\"#parsed-ep,#parsed-form\" hx-target=\"#parsed-status\">\u{1f4be} Save</button>\n      </div>\n      <div id=\"parsed-status\"></div>\n    </form>\n  </div>\n</section>\n\n<!-- \u{2500}\u{2500} Audio Preview \u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500} -->\n<section class=\"tab\" data-group=\"main\" data-tab=\"audio\">\n  <form id=\"audio-form\" class=\"row\" hx-get=\"/audio/stems\" hx-trigger=\"change from:#audio-ep, change from:.stem-filter\" hx-target=\"#stem-wrap\">\n    <label class=\"field grow\"><span>Episode</span>\n      <select name=\"ep\" id=\"audio-ep\" hx-get=\"/choices/episodes\" hx-trigger=\"refresh-all from:body\" hx-swap=\"innerHTML\">@@AUDIO_EPISODE_OPTIONS@@</select>\n    </label>\n    <fieldset class=\"radios\"><legend>Filter</legend>\n      <label><input type=\"radio\" class=\"stem-filter\" name=\"filter\" value=\"all\" checked> all</label>\n      <label><input type=\"radio\" class=\"stem-filter\" name=\"filter\" value=\"dialogue\"> dialogue</label>\n      <label><input type=\"radio\" class=\"stem-filter\" name=\"filter\" value=\"sfx\"> sfx</label>\n      <label><input type=\"radio\" class=\"stem-filter\" name=\"filter\" value=\"music\"> music</label>\n      <label><input type=\"radio\" class=\"stem-filter\" name=\"filter\" value=\"ambience\"> ambience</label>\n    </fieldset>\n  </form>\n  <div id=\"stem-wrap\" hx-get=\"/audio/stems\" hx-include=\"#audio-form\" hx-trigger=\"load\"></div>\n  <div class=\"row\">\n    <button type=\"button\" class=\"small\" hx-post=\"/audio/play-all\" hx-include=\"#audio-ep\" hx-vals=\'{\"filter\": \"sfx\"}\' hx-target=\"#audio-player\" hx-indicator=\"#audio-busy\">\u{25b6} All SFX</button>\n    <button type=\"button\" class=\"small\" hx-post=\"/audio/play-all\" hx-include=\"#audio-ep\" hx-vals=\'{\"filter\": \"music\"}\' hx-target=\"#audio-player\" hx-indicator=\"#audio-busy\">\u{25b6} All Music</button>\n    <button type=\"button\" class=\"small\" hx-post=\"/audio/play-all\" hx-include=\"#audio-ep\" hx-vals=\'{\"filter\": \"ambience\"}\' hx-target=\"#audio-player\" hx-indicator=\"#audio-busy\">\u{25b6} All Ambience</button>\n    <span id=\"audio-busy\" class=\"htmx-indicator muted\">Decoding stems\u{2026}</span>\n  </div>\n  <div class=\"loglabel\">Playback</div>\n  <div id=\"audio-player\"></div>\n</section>\n\n<!-- \u{2500}\u{2500} Audio Grading \u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500} -->\n<section class=\"tab\" data-group=\"main\" data-tab=\"grading\">\n  <form id=\"grade-form\">\n    <button type=\"button\" class=\"small\" hx-get=\"/grades/list?refresh=1\" hx-include=\"#grade-form\" hx-target=\"#grade-panel\" hx-indicator=\"#grade-busy\">\u{27f3} Load / Refresh SFX library</button>\n    <span id=\"grade-busy\" class=\"htmx-indicator muted\">Scanning SFX/\u{2026}</span>\n    <fieldset class=\"radios\" hx-get=\"/grades/list\" hx-include=\"#grade-form\" hx-trigger=\"change\" hx-target=\"#grade-panel\"><legend>Show</legend>\n      <label><input type=\"radio\" name=\"filter\" value=\"all\" checked> all</label>\n      <label><input type=\"radio\" name=\"filter\" value=\"ungraded\"> ungraded</label>\n      <label><input type=\"radio\" name=\"filter\" value=\"accurate\"> accurate</label>\n      <label><input type=\"radio\" name=\"filter\" value=\"rejected\"> rejected</label>\n    </fieldset>\n  </form>\n  <div id=\"grade-panel\"><p>Click <b>Load</b> to scan SFX/.</p></div>\n</section>\n\n<!-- \u{2500}\u{2500} Timeline \u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500}\u{2500} -->\n<section class=\"tab\" data-group=\"main\" data-tab=\"timeline\">\n  <label class=\"field\"><span>Episode</span>\n    <select name=\"ep\" id=\"tl-episode\" hx-get=\"/timeline\" hx-trigger=\"change\" hx-target=\"#tl-html\">\n      <option value=\"\"></option>@@EPISODE_OPTIONS@@\n    </select>\n  </label>\n  <div id=\"tl-html\"><p>Select an episode above.</p></div>\n</section>\n\n</main>\n</body>\n</html>\n";