1<!doctype html> 2<html lang="en"> 3<head> 4<title>Who's Behind this Project</title> 5<meta charset="utf-8"> 6<meta name="viewport" content="width=device-width,initial-scale=1">
7<script type="importmap"> 8{ 9 "imports": { 10 "d3-force": "https://cdn.jsdelivr.net/npm/[email protected]/+esm", 11 "d3-selection": "https://cdn.jsdelivr.net/npm/[email protected]/+esm", 12 "d3-zoom": "https://cdn.jsdelivr.net/npm/[email protected]/+esm", 13 "d3-drag": "https://cdn.jsdelivr.net/npm/[email protected]/+esm" 14 } 15} 16</script>
vendor: 1 bytes, line 16
16
17<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/pixi.min.js"></script>
vendor: 1 bytes, line 17
17
18<script async type="module">import mermaid from"https://cdn.jsdelivr.net/npm/mermaid@11/dist/mermaid.esm.min.mjs";mermaid.initialize({startOnLoad:!0})</script>
vendor: 1 bytes, line 18
18
19<script async src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.25.0/prism.min.js" integrity="sha512-hpZ5pDCF2bRCweL5WoA0/N1elet1KYL5mx3LP555Eg/0ZguaHawxNvEjF6O3rufAChs16HVNhEc6blF/rZoowQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
vendor: 1 bytes, line 19
19
20<script async src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.25.0/plugins/autoloader/prism-autoloader.min.js" integrity="sha512-sv0slik/5O0JIPdLBCR2A3XDg/1U3WuDEheZfI/DI5n8Yqc3h5kjrnr46FGBNiUAJF7rE4LHKwQ/SoSLRKAxEA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
vendor: 1 bytes, line 20
20
21<script>window.addEventListener("load",(()=>{document.querySelectorAll(".callout").forEach((e=>{const t=getComputedStyle(e).getPropertyValue("--callout-icon"),l=t&&t.trim().replace(/^lucide-/,"");if(l){const t=e.querySelector(".callout-title");if(t){const e=document.createElement("div"),c=document.createElement("i");e.appendChild(c),c.setAttribute("data-lucide",l),e.setAttribute("class","callout-icon"),t.insertBefore(e,t.firstChild)}}})),lucide.createIcons(),Array.from(document.querySelectorAll(".callout.is-collapsible")).forEach((e=>{e.querySelector(".callout-title").addEventListener("click",(t=>{e.classList.contains("is-collapsed")?e.classList.remove("is-collapsed"):e.classList.add("is-collapsed")}))}))}))</script>
vendor: 1 bytes, line 21
21
22<script defer="defer" src="https://fastly.jsdelivr.net/npm/@alpinejs/[email protected]/dist/cdn.min.js"></script>
vendor: 1 bytes, line 22
22
23<script defer="defer" src="https://fastly.jsdelivr.net/npm/[email protected]/dist/cdn.min.js"></script>
23 24<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.25.0/themes/prism-okaidia.min.css" integrity="sha512-mIs9kKbaw6JZFfSuo+MovjU+Ntggfoj8RwAmJbVXQ5mkAX5LlgETQEweFPI18humSPHymTb5iikEOKWF7I8ncQ==" crossorigin="anonymous" referrerpolicy="no-referrer" async>
25<script src="https://fastly.jsdelivr.net/npm/[email protected]/dist/fetch.umd.min.js" crossorigin="anonymous" referrerpolicy="no-referrer" async></script>
25 26<link href="/styles/obsidian-base.css" rel="stylesheet"> 27<link href="/styles/_theme.043bbd22.css" rel="stylesheet"> 28<link href="/styles/digital-garden-base.css" rel="stylesheet"> 29<link href="/styles/custom-style.css" rel="stylesheet"><link href="/styles/user/custom-canvas.css?v=2026-09-29T20:52:59.878Z" rel="stylesheet"><link href="/styles/user/header.css?v=2026-09-29T20:52:59.878Z" rel="stylesheet"> 30<link rel="icon" href="/favicon.ico" sizes="any"> 31<link rel="icon" href="/favicon.svg" type="image/svg+xml"> 32<link rel="apple-touch-icon" href="/apple-touch-icon.png"> 33<link rel="manifest" href="/manifest.webmanifest"> 34<style></style> 35<style></style> 36</head> 37<body class="theme-dark markdown-preview-view markdown-rendered markdown-preview-section no-filetree has-navbar css-settings-manager theme-dark mod-windows is-frameless is-hidden-frameless obsidian-app styled-scrollbars show-inline-title is-floating-nav auto-full-screen show-ribbon show-view-header is-maximized css-settings-manager color-scheme-options-default background-settings-workplace-theme-light-in-the-note background-settings-workplace-theme-dark-in-the-sky background-image-settings-markdown-page-transparent notebook-liked-markdown-page-grid-notebook-1 panel-page-bg-theme-light-wall panel-page-bg-theme-dark-plant default-left-ribbon-style default-search-bar default-scrollbar layout-style-options-default bt-bubble-layout-hide-borders h1-text-align-start h2-text-align-start h3-text-align-start h4-text-align-start h5-text-align-start h6-text-align-start inline-title-text-align-start default-hr bt-default-unordered-list default-ol-list-marker list-no-border bt-connected-indent-hover bt-colorful-connected-indent-hover default-indentation-line file-shape-default file-name-non-wrapped folder-icons remove-first-folder-icon remove-arrow bt-toggle-colorful-folder folder-style-change-options-colorful-border folder-colorful-six blockquote-style-default pdf-style-default-light pdf-style-default-dark default-table table-width-100 table-style-default enable-alternative-checkboxes default-loading-page loading-text-typing-style tag-default setting-style-traditional default-titlebar default-outline-style stack-tab-text-ori-mixed default-tab bt-default-highlight admonition-bg-color-same style-options-for-admonition-plugin style-options-for-calendar-plugin-default style-options-for-kanban-plugin-static-default style-options-for-kanban-plugin-dynamic-default style-options-for-buttons-plugin dataview-list-style-pacman default-dvtable dialogue-style-default memos-banner-gradient thino-frosted-style thino-background-default thino-share-default quiet-outline-optimize code-theme-bt-default whole-code-wrap codebox-default-style"> 38<nav class="navbar"> 39<div class="navbar-inner"> 40<a href="/" style="text-decoration:none"> 41<h1 style="margin:15px!important">The Queer History Archive of Colorado Springs</h1> 42</a> 43</div> 44<div class="search-button align-icon" onclick="toggleSearch()"> 45<span class="search-icon"> 46<i data-lucide="search"></i> 47</span> 48<span class="search-text">Search</span> 49<span class="search-keys"><code>Ctrl</code> + <code>K</code></span> 50</div> 51</nav> 52<div class="search-container" id="globalsearch" onclick="toggleSearch()"> 53<div class="search-box" onclick="event.stopPropagation()"> 54<div class="search-header"> 55<input type="search" id="term" placeholder="Start typing..."> 56</div> 57<div class="search-layout no-preview" id="search-layout"> 58<div class="search-results-panel" id="search-results"> 59<span><i>Enter your search text in the box above</i></span> 60</div> 61<div class="search-preview-panel" id="search-preview"> 62<div class="preview-placeholder"> 63<i data-lucide="file-text"></i> 64<p>Select a result to preview</p> 65</div> 66<div class="preview-content" id="preview-content"></div> 67</div> 68</div> 69<footer class="search-box-footer"> 70<div class="navigation-hint"> 71<span><code>Enter</code> to select</span> 72</div> 73<div class="navigation-hint"> 74<span><code>â </code> to navigate</span> 75</div> 76<div class="navigation-hint"> 77<span><code>ESC</code> to close</span> 78</div> 79</footer> 80</div> 81</div>
82<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/flexsearch.bundle.js"></script>
vendor: 1 bytes, line 82
82
83<script>document.addEventListener("DOMContentLoaded",init,!1),document.addEventListener("DOMContentLoaded",setCorrectShortcut,!1);const previewCache=new Map;window.toggleSearch=function(){const e=document.getElementById("globalsearch");e.classList.contains("active")?e.classList.remove("active"):(e.classList.add("active"),document.getElementById("term").focus())},window.toggleTagSearch=function(e){const t=e.textContent;t&&(document.getElementById("term").value=t.trim(),window.toggleSearch(),window.search())};const loadingSvg='\n <div style="display: flex; justify-content: center; padding: 40px;">\n <svg width="40" height="40" viewBox="0 0 45 45" xmlns="http://www.w3.org/2000/svg" stroke="currentColor">\n <g fill="none" fill-rule="evenodd" transform="translate(1 1)" stroke-width="2">\n <circle cx="22" cy="22" r="6" stroke-opacity="0">\n <animate attributeName="r" begin="1.5s" dur="3s" values="6;22" calcMode="linear" repeatCount="indefinite" />\n <animate attributeName="stroke-opacity" begin="1.5s" dur="3s" values="1;0" calcMode="linear" repeatCount="indefinite" />\n <animate attributeName="stroke-width" begin="1.5s" dur="3s" values="2;0" calcMode="linear" repeatCount="indefinite" />\n </circle>\n <circle cx="22" cy="22" r="6" stroke-opacity="0">\n <animate attributeName="r" begin="3s" dur="3s" values="6;22" calcMode="linear" repeatCount="indefinite" />\n <animate attributeName="stroke-opacity" begin="3s" dur="3s" values="1;0" calcMode="linear" repeatCount="indefinite" />\n <animate attributeName="stroke-width" begin="3s" dur="3s" values="2;0" calcMode="linear" repeatCount="indefinite" />\n </circle>\n <circle cx="22" cy="22" r="8">\n <animate attributeName="r" begin="0s" dur="1.5s" values="6;1;2;3;4;5;6" calcMode="linear" repeatCount="indefinite" />\n </circle>\n </g>\n </svg>\n </div>';function debounce(e,t,n){var r;return function(){var i=this,a=arguments,s=n&&!r;clearTimeout(r),r=setTimeout((function(){r=null,n||e.apply(i,a)}),t),s&&e.apply(i,a)}}function setCorrectShortcut(){navigator.platform.toUpperCase().indexOf("MAC")>=0&&document.querySelectorAll(".search-keys").forEach((e=>e.innerHTML="<code>â</code> + <code>K</code>"))}function tokenizeSearchTerms(e){const t=[],n=/"([^"]+)"|(\S+)/g;let r;for(;null!==(r=n.exec(e));){const e=(r[1]||r[2]).toLowerCase();e.length>1&&t.push(e)}return t.sort(((e,t)=>t.length-e.length))}function highlightTerms(e,t){if(!t||0===t.length||!e)return e;let n=e;return t.forEach((e=>{const t=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),r=new RegExp(`(${t})`,"gi");n=n.replace(r,'<span class="search-highlight">$1</span>')})),n}function getContextualExcerpt(e,t,n=150){if(!e)return"";const r=e.replace(/<[^>]*>/g,"");if(!t||0===t.length)return truncateText(r,n);let i=r.length;if(t.forEach((e=>{const t=r.toLowerCase().indexOf(e.toLowerCase());-1!==t&&t<i&&(i=t)})),i===r.length)return truncateText(r,n);const a=Math.max(0,i-50),s=Math.min(r.length,a+n);let o=r.substring(a,s);return a>0&&(o="..."+o),s<r.length&&(o+="..."),o}function truncateText(e,t){return e?(e=e.replace(/<[^>]*>/g,"")).length<=t?e:e.substring(0,t-3)+"...":""}async function fetchPreviewContent(e){if(previewCache.has(e))return previewCache.get(e);try{const t=await fetch(e),n=await t.text(),r=new DOMParser,i=r.parseFromString(n,"text/html").querySelector(".content, .cm-s-obsidian, article, main"),a=i?i.innerHTML:"";return previewCache.set(e,a),a}catch(e){return console.error("Failed to fetch preview:",e),""}}function highlightTextNodes(e,t){if(!t||0===t.length)return;const n=document.createTreeWalker(e,NodeFilter.SHOW_TEXT,null,!1),r=[];for(;n.nextNode();)r.push(n.currentNode);r.forEach((e=>{const n=e.textContent;let r=!1;if(t.forEach((e=>{n.toLowerCase().includes(e.toLowerCase())&&(r=!0)})),r){const r=document.createElement("span");r.innerHTML=highlightTerms(n,t),e.parentNode.replaceChild(r,e)}}))}async function showPreview(e){const t=window.searchResults;if(!t||!t[e])return;const n=t[e],r=document.getElementById("search-preview"),i=document.getElementById("preview-content"),a=r.querySelector(".preview-placeholder");if(!r||!i)return;document.querySelectorAll(".searchresult").forEach((e=>e.classList.remove("active")));const s=document.querySelector(`.searchresult[data-index="${e}"]`);s&&s.classList.add("active"),i.innerHTML=loadingSvg,i.classList.add("has-content"),a.style.display="none";const o=await fetchPreviewContent(n.url),c=n.tags&&n.tags.length>0?`<div class="preview-tags">${n.tags.map((e=>`<a class="tag" href="javascript:void(0);" onclick="toggleTagSearch(this)">#${e}</a>`)).join("")}</div>`:"";i.innerHTML=`\n <div class="preview-title">${highlightTerms(n.title,window.searchTerms)}</div>\n ${c}\n <div class="preview-body">${o}</div>\n `;const l=i.querySelector(".preview-body");l&&window.searchTerms&&highlightTextNodes(l,window.searchTerms),window.currentPreviewIndex=e}function hidePreview(){const e=document.getElementById("search-preview"),t=document.getElementById("preview-content"),n=e?.querySelector(".preview-placeholder");n&&(n.style.display="flex"),t&&(t.classList.remove("has-content"),t.innerHTML=""),window.currentPreviewIndex=-1}function createIndex(e){const t=e=>(e=>e.toLowerCase().normalize("NFD").replace(/n\u0303/g,"ñ").replace(/[\u0300-\u036f]/g,"").normalize("NFC"))(e).split(/([^a-z]|[^\x00-\x7F])/),n=new FlexSearch.Document({cache:!0,charset:"latin:extra",optimize:!0,index:[{field:"content",tokenize:"reverse",encode:t},{field:"title",tokenize:"forward",encode:t},{field:"tags",tokenize:"forward",encode:t}]});return e.forEach(((e,t)=>{n.add({id:t,title:e.title,content:e.content,tags:e.tags})})),n}
83async function init(){const e=await fetch("/searchIndex.json?v=2026-09-29T20:52:59.878Z").then((e=>e.json())),t=createIndex(e);function n(e){const t=document.querySelectorAll(".searchresult");if(0===t.length)return;let n,r=-1;t.forEach(((e,t)=>{e.classList.contains("active")&&(r=t)})),-1===r?n=e>0?0:t.length-1:(n=r+e,n<0&&(n=t.length-1),n>=t.length&&(n=0)),t.forEach((e=>e.classList.remove("active"))),t[n].classList.add("active"),t[n].scrollIntoView({behavior:"smooth",block:"nearest"}),showPreview(parseInt(t[n].dataset.index))}window.docs=e,window.index=t,document.addEventListener("keydown",(e=>{if((e.ctrlKey||e.metaKey)&&"k"===e.key&&(e.preventDefault(),toggleSearch()),"Escape"===e.key&&document.getElementById("globalsearch").classList.remove("active"),document.getElementById("globalsearch").classList.contains("active")&&("ArrowDown"===e.key&&(e.preventDefault(),n(1)),"ArrowUp"===e.key&&(e.preventDefault(),n(-1)),"Enter"===e.key)){e.preventDefault();const t=document.querySelector(".searchresult.active");if(t){const e=t.dataset.url;e&&(window.location.href=e)}}}));const r=debounce(search,200,!1);window.field=document.querySelector("#term"),field.addEventListener("keydown",(e=>{"ArrowDown"!==e.key&&"ArrowUp"!==e.key&&"Enter"!==e.key&&r()})),window.resultsDiv=document.querySelector("#search-results");const i=new URL(location.href).searchParams;i.get("q")&&(field.setAttribute("value",i.get("q")),toggleSearch(),search())}async function search(){const e=field.value.trim(),t=document.getElementById("search-layout");if(!e)return resultsDiv.innerHTML="<span><i>Enter your search text in the box above</i></span>",hidePreview(),void(t&&t.classList.add("no-preview"));window.lastSearch=e,window.searchTerms=tokenizeSearchTerms(e),resultsDiv.innerHTML=loadingSvg,hidePreview();const n=offlineSearch(e);if(window.searchResults=n,!n.length)return t&&t.classList.add("no-preview"),void(resultsDiv.innerHTML=`\n <div class="no-results">\n <svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">\n <circle cx="11" cy="11" r="8"></circle>\n <line x1="21" y1="21" x2="16.65" y2="16.65"></line>\n <line x1="8" y1="11" x2="14" y2="11"></line>\n </svg>\n <p>No results for "${e}"</p>\n </div>\n `);t&&t.classList.remove("no-preview");let r="";n.forEach(((e,t)=>{const n=highlightTerms(getContextualExcerpt(e.content,window.searchTerms,120),window.searchTerms),i=highlightTerms(e.title,window.searchTerms),a=e.tags&&e.tags.length>0?`<div class="result-tags">${e.tags.map((e=>`<span class="tag">#${e}</span>`)).join("")}</div>`:"";r+=`\n <div class="searchresult${0===t?" active":""}"\n data-index="${t}"\n data-url="${e.url}"\n onmouseenter="showPreview(${t})"\n onclick="window.location.href='${e.url}'">\n <span class="result-title">${i}</span>\n ${a}\n <div class="result-excerpt">${n}</div>\n </div>\n `})),resultsDiv.innerHTML=r,n.length>0&&showPreview(0),"undefined"!=typeof lucide&&lucide.createIcons()}function offlineSearch(e){const t=window.docs,n="#"===e[0]&&e.length>1?index.search(e.substring(1),[{field:"tags"}]):index.search(e,[{field:"title",limit:5},{field:"content",limit:10}]),r=e=>{const t=n.filter((t=>t.field===e));return 0===t.length?[]:[...t[0].result]};return[...new Set([...r("title"),...r("content"),...r("tags")])].map((e=>{const n={...t[e]};return n.tags=n.tags.filter((e=>
83"gardenEntry"!==e&&"note"!==e)),n}))}window.lastSearch="",window.searchResults=[],window.searchTerms=[],window.currentPreviewIndex=-1,window.search=search</script>
83 84<main class="content cm-s-obsidian print"> 85<header> 86<div class="header-meta"> 87<div class="header-tags"> 88</div> 89<div class="timestamps"><div><i data-lucide="calendar-plus"></i> <span class="human-date" data-date="2025-12-09T00:09:32.088-07:00"></span></div><div><i data-lucide="calendar-clock"></i> <span class="human-date" data-date="2026-08-17T09:31:43.051-06:00"></span></div></div></div> 90</header> 91<h1 id="who-s-behind-this-project" tabindex="-1">Who's Behind this Project</h1> 92<p>Currently, this project is mainly being researched by <a class="internal-link" target="" data-note-icon="" href="/people/nico-wilkinson/">Nico Wilkinson</a>, with the help of materials collected and archived by the <a class="internal-link" target="" data-note-icon="" href="/art-and-publications/colorado-springs-lgbtqia-2-oral-history-project/">Colorado Springs LGBTQIA2+ Oral History Project</a>, the Wayback Machine, and the PPLD Local History and Genealogy archives.</p> 93<p>The sheer scope of information to find is far too much for one person, however. If you also have a passion for uncovering local LGBTQIA2+ history, consider joining the <a class="internal-link" target="" data-note-icon="" href="/organizations/lambda-history-committee/">Lambda History Committee</a></p> 94<br><br> 95<h2>Anything to add?</h2> 96<div id="disqus_thread"></div>
97<script>!function(){var e=document,t=e.createElement("script");t.src="https://queer-history-of-colorado-springs.disqus.com/embed.js",t.setAttribute("data-timestamp",+new Date),(e.head||e.body).appendChild(t)}()</script>
97 98<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript> 99</main> 100<aside> 101<div class="sidebar"> 102<div class="sidebar-container"> 103<center><h2 id="-archived-materials-https-digitalcollections-ppld-org-nodes-view-1046199-"><a href="https://digitalcollections.ppld.org/nodes/view/1046199">Archived Materials</a></h2> 104<h2 id="-timeline-view-https-cospringshistory-lgbt-about-a-timeline-of-colorado-springs-queer-history-"><a href="https://cospringshistory.lgbt/about/a-timeline-of-colorado-springs-queer-history/">Timeline View</a></h2> 105<h2 id="-map-view-https-historypin-org-collections-19376-"><a href="https://historypin.org/collections/19376/">Map View</a></h2></center> 106<center><button id="surpriseButtonSide">Visit a Random Page</button></center> 107<br> 108<h2 id="indexes" tabindex="-1">Indexes</h2> 109<p><a class="internal-link" target="" data-note-icon="" href="/about/index/people/">People</a><br> 110<a class="internal-link" target="" data-note-icon="" href="/about/index/places/">Places</a><br> 111<a class="internal-link" target="" data-note-icon="" href="/about/index/organizations/">Organizations</a><br> 112<a class="internal-link" target="" data-note-icon="" href="/about/index/events/">Events</a><br> 113<a class="internal-link" target="" data-note-icon="" href="/about/index/arts-and-writing/">Arts and Writing</a><br> 114<a class="internal-link" target="" data-note-icon="" href="/about/index/opps-and-allies/">Opps and Allies</a></p>
115<script>const pages=["https://cospringshistory.lgbt/places/true-colors-lesbian-bar/","https://cospringshistory.lgbt/places/together-as-one/","https://cospringshistory.lgbt/places/the-underground/","https://cospringshistory.lgbt/places/the-quaill-club/","https://cospringshistory.lgbt/places/the-purple-cow/","https://cospringshistory.lgbt/places/the-play-pen/","https://cospringshistory.lgbt/places/the-penthouse-lounge/","https://cospringshistory.lgbt/places/the-hide-and-seek/","https://cospringshistory.lgbt/places/the-gay-underground/","https://cospringshistory.lgbt/places/the-exit/","https://cospringshistory.lgbt/places/the-box-car/","https://cospringshistory.lgbt/places/the-bijou/","https://cospringshistory.lgbt/places/the-annex/","https://cospringshistory.lgbt/places/the-alamo-hotel-and-the-silver-fox/","https://cospringshistory.lgbt/places/rooted-studio/","https://cospringshistory.lgbt/places/rathskellar/","https://cospringshistory.lgbt/places/poor-richards/","https://cospringshistory.lgbt/places/mountain-fold-books/","https://cospringshistory.lgbt/places/la-foret-conference-center/","https://cospringshistory.lgbt/places/la-cuchara/","https://cospringshistory.lgbt/places/kona-club/","https://cospringshistory.lgbt/places/jinx-s-place/","https://cospringshistory.lgbt/places/hide-and-seek-pueblo/","https://cospringshistory.lgbt/places/ground-zero-venue/","https://cospringshistory.lgbt/places/dj-s-bar-and-grill/","https://cospringshistory.lgbt/places/david-s/","https://cospringshistory.lgbt/places/conejos-neighborhood/","https://cospringshistory.lgbt/places/chief-theater/","https://cospringshistory.lgbt/places/bubbles-colorado-springs/","https://cospringshistory.lgbt/places/backstreets-restaurant/","https://cospringshistory.lgbt/places/acacia-park/","https://cospringshistory.lgbt/places/abaton-books/","https://cospringshistory.lgbt/places/2735-club/","https://cospringshistory.lgbt/people/zivia-berkowitz/","https://cospringshistory.lgbt/people/william-watson/","https://cospringshistory.lgbt/people/tom-gehling/","https://cospringshistory.lgbt/people/tim-holt/","https://cospringshistory.lgbt/people/the-horse-thief-of-1878/","https://cospringshistory.lgbt/people/tamara-bartlett/","https://cospringshistory.lgbt/people/syd-lapan/","https://cospringshistory.lgbt/people/sugar-bear/","https://cospringshistory.lgbt/people/stanley-norman/","https://cospringshistory.lgbt/people/spring-byington/","https://cospringshistory.lgbt/people/shel-anderson/","https://cospringshistory.lgbt/people/ryan-acker/","https://cospringshistory.lgbt/people/rudy-cardenas/","https://cospringshistory.lgbt/people/roxie/","https://cospringshistory.lgbt/people/ronald-eby/","https://cospringshistory.lgbt/people/roger-c-annis/","https://cospringshistory.lgbt/people/rod-rhodes/","https://cospringshistory.lgbt/people/ricky-morris/","https://cospringshistory.lgbt/people/rick-nunez/","https://cospringshistory.lgbt/people/reverend-roger-webb/","https://cospringshistory.lgbt/people/rev-wes-mullins/","https://cospringshistory.lgbt/people/rev-julia-mc-kay/","https://cospringshistory.lgbt/people/renee-nicole-good/","https://cospringshistory.lgbt/people/penni-kimmel/","https://cospringshistory.lgbt/people/patrick-tracey/","https://cospringshistory.lgbt/people/notable-queer-outdoor-recreationalists-and-affinity-groups-in-colorado-springs/","https://cospringshistory.lgbt/people/nikki-spears/","https://cospringshistory.lgbt/people/nico-wilkinson/","https://cospringshistory.lgbt/people/nicki-lee/","https://cospringshistory.lgbt/people/nancy-wilstead/","https://cospringshistory.lgbt/people/nancy-josephine-leah-morris/","https://cospringshistory.lgbt/people/monycka-snowbird/","https://cospringshistory.lgbt/people/mary-malia/","https://cospringshistory.lgbt/people/mary-lou-makepeace/","https://cospringshistory.lgbt/people/marriage-of-david-mc-cord-and-david-zamora/","https://cospringshistory.lgbt/people/marcie-wexler/","https://cospringshistory.lgbt/people/malachi-truman-harris/","https://cospringshistory.lgbt/people/madaleine-sorkin/","https://cospringshistory.lgbt/people/mackenzie-beninati/","https://cospringshistory.lgbt/people/lyda-rose/","https://cospringshistory.lgbt/people/lois-lane/","https://cospringshistory.lgbt/people/little-bill-douglas/","https://cospringshistory.lgbt/people/lisa-jo-laptad/","https://cospringshistory.lgbt/people/lady-bubbles/","https://cospringshistory.lgbt/people/katherine-a-pease/","https://cospringshistory.lgbt/people/katharine-lee-bates/","https://cospringshistory.lgbt/people/joe-brady/","https://cospringshistory.lgbt/people/jocelyn-sandberg/","https://cospringshistory.lgbt/people/joanna-jennings/","https://cospringshistory.lgbt/people/jerima-king/","https://cospringshistory.lgbt/people/janice-the-barbette/","https://cospringshistory.lgbt/people/jamie-logan/","https://cospringshistory.lgbt/people/helen-thompson/","https://cospringshistory.lgbt/people/gene-shinn/","https://cospringshistory.lgbt/people/frank-whitworth/","https://cospringshistory.lgbt/people/felicia-charles/","https://cospringshistory.lgbt/people/elvira/","https://cospringshistory.lgbt/people/edward-modesto/","https://cospringshistory.lgbt/people/duane-thompson/","https://cospringshistory.lgbt/people/dr-rushaan-kumar/","https://cospringshistory.lgbt/people/dorothy-bell/","https://cospringshistory.lgbt/people/donaciano-martinez/","https://cospringshistory.lgbt/people/don-thomas/","https://cospringshistory.lgbt/people/don-collier/","https://cospringshistory.lgbt/people/david-zamora/","https://cospringshistory.lgbt/people/david-eidson/","https://cospringshistory.lgbt/people/dara-hoffman-fox/","https://cospringshistory.lgbt/people/daniel-davis-aston/","https://cospringshistory.lgbt/people/cate-terwilliger/","https://cospringshistory.lgbt/people/bleau-beamer/","https://cospringshistory.lgbt/people/bill-swearingen/","https://cospringshistory.lgbt/people/bessie-the-girl-hobo/","https://cospringshistory.lgbt/people/barbara-grier/","https://cospringshistory.lgbt/people/ashley-cornelius/","https://cospringshistory.lgbt/people/alan-wakefield/","https://cospringshistory.lgbt/organizations/walking-tall-a-lesbian-organization/","https://cospringshistory.lgbt/organizations/united-court-of-the-pikes-peak-empire/","https://cospringshistory.lgbt/organizations/southern-colorado-health-network/","https://cospringshistory.lgbt/organizations/pueblo-aids-coalition/","https://cospringshistory.lgbt/organizations/pikes-peak-united-rodeo/","https://cospringshistory.lgbt/organizations/pikes-peak-safe-at-schools-coalition/","https://cospringshistory.lgbt/organizations/pikes-peak-metropolitan-community-church/","https://cospringshistory.lgbt/organizations/pflag/","https://cospringshistory.lgbt/organizations/peak-area-gender-expressions/","https://cospringshistory.lgbt/organizations/outward-bound/","https://cospringshistory.lgbt/organizations/network-psn/","https://cospringshistory.lgbt/organizations/lesbian-avengers
115/","https://cospringshistory.lgbt/organizations/lambda-services-bureau/","https://cospringshistory.lgbt/organizations/lambda-house/","https://cospringshistory.lgbt/organizations/lambda-history-committee/","https://cospringshistory.lgbt/organizations/la-guia/","https://cospringshistory.lgbt/organizations/inside-out-youth-services/","https://cospringshistory.lgbt/organizations/ground-zero/","https://cospringshistory.lgbt/organizations/glbq-gay/","https://cospringshistory.lgbt/organizations/gay-sisters-alliance-of-colorado-springs/","https://cospringshistory.lgbt/organizations/gay-liberation-front-of-colorado-springs/","https://cospringshistory.lgbt/organizations/equal-at-colorado-college/","https://cospringshistory.lgbt/organizations/dignity-colorado-springs/","https://cospringshistory.lgbt/organizations/count-me-in/","https://cospringshistory.lgbt/organizations/colorado-springs-women-s-health-service-center/","https://cospringshistory.lgbt/organizations/colorado-springs-pride-center/","https://cospringshistory.lgbt/organizations/colorado-springs-free-clinic/","https://cospringshistory.lgbt/organizations/colorado-gay-rodeo-association/","https://cospringshistory.lgbt/organizations/black-and-pink/","https://cospringshistory.lgbt/organizations/bacchus-wine-club/","https://cospringshistory.lgbt/organizations/501-n-foote-clinic/","https://cospringshistory.lgbt/opps-and-allies/the-colorado-springs-free-press-and-sun/","https://cospringshistory.lgbt/opps-and-allies/indecent-exposure-or-behavior/","https://cospringshistory.lgbt/opps-and-allies/focus-on-the-family/","https://cospringshistory.lgbt/opps-and-allies/el-paso-county-democratic-party/","https://cospringshistory.lgbt/opps-and-allies/colorado-springs-police-department/","https://cospringshistory.lgbt/opps-and-allies/colorado-springs-independent/","https://cospringshistory.lgbt/internal/research/best-practices-around-gendering-people-in-the-past/","https://cospringshistory.lgbt/internal/marketing/newsletter-issue-1/","https://cospringshistory.lgbt/events/shooting-at-club-q/","https://cospringshistory.lgbt/events/pikes-peak-pridefest/","https://cospringshistory.lgbt/events/pikes-peak-gold-rush/","https://cospringshistory.lgbt/events/passage-of-amendment-2/","https://cospringshistory.lgbt/events/mr-jockey-shorts-contest/","https://cospringshistory.lgbt/events/lambda-awards/","https://cospringshistory.lgbt/events/gays-and-theys-mountain-days/","https://cospringshistory.lgbt/events/excel/","https://cospringshistory.lgbt/events/block-party/","https://cospringshistory.lgbt/events/aids-epidemic/","https://cospringshistory.lgbt/art-and-publications/the-source/","https://cospringshistory.lgbt/art-and-publications/the-source-publishing/","https://cospringshistory.lgbt/art-and-publications/the-scene/","https://cospringshistory.lgbt/art-and-publications/the-knight-after-christmas-by-penni-kimmel/","https://cospringshistory.lgbt/art-and-publications/the-aids-quilt/","https://cospringshistory.lgbt/art-and-publications/speakout/","https://cospringshistory.lgbt/art-and-publications/sexy-train-things/","https://cospringshistory.lgbt/art-and-publications/queer-and-there/","https://cospringshistory.lgbt/art-and-publications/prickly-pear-printing/","https://cospringshistory.lgbt/art-and-publications/pikes-peak-poet-laureate/","https://cospringshistory.lgbt/art-and-publications/obras-periscopicos/","https://cospringshistory.lgbt/art-and-publications/new-phazes/","https://cospringshistory.lgbt/art-and-publications/la-carta/","https://cospringshistory.lgbt/art-and-publications/keep-colorado-springs-queer/","https://cospringshistory.lgbt/art-and-publications/gayspeak/","https://cospringshistory.lgbt/art-and-publications/gays-in-colorado-springs-by-kktv/","https://cospringshistory.lgbt/art-and-publications/focus-on-the-fabulous/","https://cospringshistory.lgbt/art-and-publications/colors-of-courage-gay-lesbian-bisexual-and-transgender-life-in-colorado-springs/","https://cospringshistory.lgbt/art-and-publications/colorado-springs-lgbtqia-2-oral-history-project/","https://cospringshistory.lgbt/art-and-publications/colorado-gay-magazine/","https://cospringshistory.lgbt/art-and-publications/born-different-and-the-dog-that-moos/"];document.getElementById("surpriseButtonSide").addEventListener("click",(()=>{const s=Math.floor(Math.random()*pages.length),t=pages[s];window.location.href=t}))</script>
vendor: 1 bytes, line 115
115
116<script type="module">import{forceSimulation,forceManyBody,forceCenter,forceLink,forceCollide,forceRadial}from"d3-force";import{select}from"d3-selection";import{zoom as d3Zoom,zoomIdentity}from"d3-zoom";import{drag as d3Drag}from"d3-drag";const{Application:Application,Container:Container,Graphics:Graphics,Text:Text,Circle:Circle}=PIXI;async function fetchGraphData(){const e=await fetch("/graph.json").then((e=>e.json()));return{graphData:e,fullGraphData:filterFullGraphData(e)}}function filterFullGraphData(e){if(!e)return null;e=JSON.parse(JSON.stringify(e));const t=Object.values(e.nodes).filter((e=>e.hide)).map((e=>e.id));return{links:e.links.filter((e=>-1===t.indexOf(e.source)&&-1===t.indexOf(e.target))),nodes:Object.values(e.nodes).filter((e=>!e.hide))}}function filterLocalGraphData(e,t){if(!e)return null;t=t||1;const a=JSON.parse(JSON.stringify(e.nodes)),o=JSON.parse(JSON.stringify(e.links));let n=decodeURI(window.location.pathname),l=a[n];if(!l){const e=n.toLowerCase();l=Object.values(a).find((t=>t.url.toLowerCase()===e))}if(l||(l=Object.values(a).find((e=>e.home))),!l)return null;l.current=!0;const r=new Set(Object.values(a).filter((e=>e.hide)).map((e=>e.id))),c=e=>e===l.id||!r.has(e),i={};for(const e of o)c(e.source)&&c(e.target)&&((i[e.source]=i[e.source]||new Set).add(e.target),(i[e.target]=i[e.target]||new Set).add(e.source));const s=new Set([l.id]);let d=new Set([l.id]);for(let e=0;e<t&&d.size>0;e++){const e=new Set;for(const t of d)for(const a of i[t]||[])s.has(a)||(s.add(a),e.add(a));d=e}const u=Object.values(a).filter((e=>!e.hide&&s.has(e.id))),p=u.map((e=>e.id));return{nodes:u,links:o.filter((e=>p.indexOf(e.target)>-1&&p.indexOf(e.source)>-1))}}function getCssVar(e){return getComputedStyle(document.body).getPropertyValue(e).trim()}const _colorProbe=document.createElement("div");function resolveColor(e){_colorProbe.style.color=e;const t=getComputedStyle(_colorProbe).color.match(/(\d+),\s*(\d+),\s*(\d+)/);return t?(parseInt(t[1])<<16)+(parseInt(t[2])<<8)+parseInt(t[3]):6710886}_colorProbe.style.display="none",document.body.appendChild(_colorProbe);const _decodeEl=document.createElement("textarea");function htmlDecode(e){return _decodeEl.innerHTML=e,_decodeEl.value}function buildDegreeMap(e){const t={};for(const a of e){const e="object"==typeof a.source?a.source.id:a.source,o="object"==typeof a.target?a.target.id:a.target;t[e]=(t[e]||0)+1,t[o]=(t[o]||0)+1}return t}function nodeRadius(e,t){return 2+Math.sqrt(t[e]||0)}function renderGraph(e,t,a){if(!e||!e.nodes||0===e.nodes.length)return null;const o=document.getElementById(t);if(!o)return null;for(;o.firstChild;)o.removeChild(o.firstChild);const n=o.offsetWidth,l=o.offsetHeight||250;if(0===n)return null;const r=resolveColor(getCssVar("--dg-graph-node-color")||getCssVar("--graph-main")||"#666"),c=resolveColor(getCssVar("--dg-graph-node-color-muted")||getCssVar("--graph-muted")||"#ccc"),i=resolveColor(getCssVar("--dg-graph-label-color")||getCssVar("--text-normal")||"#eee"),s=getComputedStyle(document.body).fontFamily||"Sans-Serif",d=buildDegreeMap(e.links),u=e.nodes.map((e=>({...e,text:htmlDecode(e.title)}))),p=e.links.map((e=>({source:e.source,target:e.target}))),h=a?-300:-100,f=a?80:40,g=Math.min(n,l)/3,m=forceSimulation(u).force("charge",forceManyBody().strength(h)).force("center",forceCenter(n/2,l/2).strength(.5)).force("link",forceLink(p).id((e=>e.id)).distance(f)).force("collide",forceCollide((e=>nodeRadius(e.id,d)+1)).iterations(3)).force("radial",forceRadial(g,n/2,l/2).strength(.05)),y=new Application({width:n,height:l,antialias:!0,autoStart:!1,autoDensity:!0,backgroundAlpha:0,resolution:window.devicePixelRatio});o.appendChild(y.view);const C=y.stage;C.interactive=!0,C.hitArea=y.screen;const x=new Graphics,D=new Container,G=new Container;C.addChild(x,D,G);let b=null,v=new Set,w=!1,A=0,S=null,L=zoomIdentity;const k=[],M=[];function j(e){if(b=e,v.clear(),null===e){for(const e of k)e.active=!1;for(const e of M)e.active=!1}else{for(const t of M){const a=t.simulationData.source,o=t.simulationData.target,n="object"==typeof a?a.id:a,l="object"==typeof o?o.id:o;n!==e&&l!==e||(v.add(n),v.add(l)),t.active=n===e||l===e}for(const e of k)e.active=v.has(e.simulationData.id)}}for(const e of u){const t=nodeRadius(e.id,d),a=new Text(e.text,{fontSize:16,fill:i,fontFamily:s});a.resolution=2,a.anchor.set(.5,1),a.scale.set(1/3),a.alpha=0;const o=new Graphics;o.interactive=!0,o.cursor="pointer",o.hitArea=new Circle(0,0,t+2),o._nodeId=e.id;const n=e.current?r:c;o.beginFill(n),o.drawCircle(0,0,t),o.endFill(),e.current&&(o.lineStyle(.5,r),o.drawCircle(0,0,t+1.5));let l=0;o.on("pointerover",(()=>
116{j(o._nodeId),l=a.alpha,w||I()})),o.on("pointerleave",(()=>{j(null),a.alpha=l,w||I()})),D.addChild(o),G.addChild(a),k.push({simulationData:e,gfx:o,label:a,radius:t,active:!1,baseAlpha:1,targetAlpha:1,currentAlpha:1})}for(const e of p)M.push({simulationData:e,active:!1,baseAlpha:.4,targetAlpha:.4,currentAlpha:.4});function I(){for(const e of k)e.targetAlpha=null!==b?e.active?1:.1:e.baseAlpha;for(const e of M)e.targetAlpha=null!==b?e.active?.8:.05:e.baseAlpha}function O(e,t,a){return e+(t-e)*a}select(y.view).call(d3Drag().container((()=>y.view)).subject((()=>{if(!b)return null;const e=u.find((e=>e.id===b));return e?{x:e.x*L.k+L.x,y:e.y*L.k+L.y,node:e}:null})).on("start",(function(e){e.active||m.alphaTarget(1).restart();const t=e.subject.node;t.fx=t.x,t.fy=t.y,A=Date.now(),S={x:e.x,y:e.y},w=!0})).on("drag",(function(e){const t=e.subject.node;t.fx=(e.x-L.x)/L.k,t.fy=(e.y-L.y)/L.k})).on("end",(function(e){e.active||m.alphaTarget(0);const t=e.subject.node;t.fx=null,t.fy=null,w=!1;const a=Date.now()-A,o=e.x-S.x,n=e.y-S.y,l=Math.sqrt(o*o+n*n);a<500&&l<5&&t.url&&(window.location=t.url)})));const F=d3Zoom().extent([[0,0],[n,l]]).scaleExtent([.25,4]).on("zoom",(({transform:e})=>{L=e,C.scale.set(e.k,e.k),C.position.set(e.x,e.y);const t=Math.max((e.k-1)/3.75,0);for(const e of k)e.simulationData.id!==b&&(e.label.alpha=t)}));select(y.view).call(F);let E=!1;return requestAnimationFrame((function e(){if(!E){for(const e of k){const{x:t,y:a}=e.simulationData;null!=t&&null!=a&&(e.gfx.position.set(t,a),e.label.position.set(t,a-e.radius-2),e.currentAlpha=O(e.currentAlpha,e.targetAlpha,.15),e.gfx.alpha=e.currentAlpha,e.simulationData.id===b&&(e.label.alpha=1))}x.clear();for(const e of M){const t=e.simulationData.source,a=e.simulationData.target;null!=t.x&&null!=a.x&&(e.currentAlpha=O(e.currentAlpha,e.targetAlpha,.15),x.lineStyle(1,e.active?r:c,e.currentAlpha),x.moveTo(t.x,t.y),x.lineTo(a.x,a.y))}y.render(),requestAnimationFrame(e)}})),(a||e.nodes.length>4)&&setTimeout((()=>{let e=1/0,t=-1/0,a=1/0,o=-1/0;for(const n of u)null!=n.x&&null!=n.y&&(e=Math.min(e,n.x),t=Math.max(t,n.x),a=Math.min(a,n.y),o=Math.max(o,n.y));if(e===1/0)return;const r=t-e+100,c=o-a+100,i=Math.min(n/r,l/c,2),s=(e+t)/2,d=(a+o)/2,p=zoomIdentity.translate(n/2-s*i,l/2-d*i).scale(i);select(y.view).call(F.transform,p)}),500),function(){E=!0,m.stop(),select(y.view).on(".drag",null).on(".zoom",null),y.destroy(!0,{children:!0})}}let graphDataCache=null,fullGraphDataCache=null,localGraphCleanup=null,globalGraphCleanup=null,localGraphDepth=1;async function init(){const{graphData:e,fullGraphData:t}=await fetchGraphData();graphDataCache=e,fullGraphDataCache=t,renderLocal()}function renderLocal(){localGraphCleanup&&(localGraphCleanup(),localGraphCleanup=null);const e=renderGraph(filterLocalGraphData(graphDataCache,localGraphDepth),"link-graph",!1);localGraphCleanup=e}function setLocalGraphDepth(e){localGraphDepth=parseInt(e,10)||1,renderLocal()}function openModal(e){globalGraphCleanup&&(globalGraphCleanup(),globalGraphCleanup=null),document.getElementById("full-graph").style.display="",setTimeout((()=>{globalGraphCleanup=renderGraph(e,"full-graph-container",!0),lucide.createIcons({attrs:{class:["svg-icon"]}})}),50)}function openFullGraph(){openModal(fullGraphDataCache)}function openExpandedLocal(){openModal(filterLocalGraphData(graphDataCache,localGraphDepth))}function closeFullGraph(){document.getElementById("full-graph").style.display="none",globalGraphCleanup&&(globalGraphCleanup(),globalGraphCleanup=null)}window.__graph={openFullGraph:openFullGraph,closeFullGraph:closeFullGraph,openExpandedLocal:openExpandedLocal,rerenderLocal:renderLocal,setLocalGraphDepth:setLocalGraphDepth},document.addEventListener("forestry:css-changed",(function(){graphDataCache&&renderLocal()})),init()</script>
116 117<div id="graph-component" class="graph" x-data="{ showFullGraph: false, graphDepth: 1 }"> 118<div class="graph-title-container"> 119<div class="graph-title">Connected Pages</div> 120<div id="graph-controls"> 121<div class="ctrl-right"> 122<span id="global-graph-btn" x-on:click="showFullGraph = true; window.__graph.openFullGraph()"><i data-lucide="globe" aria-hidden="true"></i></span> 123<span id="graph-fs-btn" x-on:click="showFullGraph = true; window.__graph.openExpandedLocal()"><i data-lucide="expand" aria-hidden="true"></i></span> 124</div> 125</div> 126</div> 127<div id="link-graph"></div> 128<div x-show="showFullGraph" id="full-graph" class="show" style="display:none" x-on:click.self="window.__graph.closeFullGraph(); showFullGraph = false;"> 129<span id="full-graph-close" x-on:click="window.__graph.closeFullGraph(); showFullGraph = false;"><i data-lucide="x" aria-hidden="true"></i></span> 130<div id="full-graph-container"></div> 131</div> 132</div> 133</div> 134</div> 135</aside> 136<style>#tooltip-wrapper{background:var(--background-primary);padding:1em;border-radius:4px;overflow:hidden;position:fixed;width:80%;max-width:400px;height:auto;max-height:300px;font-size:.8em;box-shadow:0 5px 10px rgba(0,0,0,.1);opacity:0;transition:opacity .1s;unicode-bidi:plaintext;overflow-y:scroll;z-index:10}#tooltip-wrapper:after{content:"";position:absolute;z-index:1;bottom:0;left:0;pointer-events:none;width:100%;unicode-bidi:plaintext;height:75px}.tooltip-pdf{width:100%;height:260px;border:0}</style> 137<div style="opacity:0;display:none" id="tooltip-wrapper"> 138<div id="tooltip-content"> 139</div> 140</div> 141<iframe style="display:none;height:0;width:0" id="link-preview-iframe" src=""> 142</iframe>
143<script>var opacityTimeout,contentTimeout,transitionDurationMs=100,iframe=document.getElementById("link-preview-iframe"),tooltipWrapper=document.getElementById("tooltip-wrapper"),tooltipContent=document.getElementById("tooltip-content"),linkHistories={};function hideTooltip(){opacityTimeout=setTimeout((function(){tooltipWrapper.style.opacity=0,contentTimeout=setTimeout((function(){tooltipContent.innerHTML="",tooltipWrapper.style.display="none"}),transitionDurationMs+1)}),transitionDurationMs)}function positionTooltip(t){var o=t.getClientRects()[t.getClientRects().length-1],e=document.documentElement.clientWidth,i=window.innerHeight,p=12,n=10,l=(o.top,i-(o.top+o.height)),r=(o.left,e-(o.left+o.width)),s=l>=tooltipWrapper.offsetHeight+p?"bottom":"top",a=r>=tooltipWrapper.offsetWidth+p?"right":"left";tooltipWrapper.style.top="bottom"===s?o.top+o.height+p+"px":o.top-tooltipWrapper.offsetHeight-p+"px",tooltipWrapper.style.left="right"===a?o.left+o.width+p+"px":o.left-tooltipWrapper.offsetWidth-p+"px";var c=parseFloat(tooltipWrapper.style.top),f=parseFloat(tooltipWrapper.style.left);c<n?tooltipWrapper.style.top="10px":c+tooltipWrapper.offsetHeight+n>i&&(tooltipWrapper.style.top=i-tooltipWrapper.offsetHeight-n+"px"),f<n?tooltipWrapper.style.left="10px":f+tooltipWrapper.offsetWidth+n>e&&(tooltipWrapper.style.left=e-tooltipWrapper.offsetWidth-n+"px")}function showTooltip(t){var o=t.currentTarget||t.target;if(o){var e=o.getAttribute("href");if(-1===e.indexOf("http")||-1!==e.indexOf(window.location.host)){tooltipWrapper.style.display="block",tooltipWrapper.style.opacity=0,positionTooltip(o);let t=e.split("#")[0];if(t.toLowerCase().endsWith(".pdf"))return tooltipContent.innerHTML='<iframe class="tooltip-pdf" src="'+t+'"></iframe>',tooltipWrapper.scrollTop=0,void setTimeout((function(){positionTooltip(o),tooltipWrapper.style.opacity=1}),1);if(/\.(png|jpg|jpeg|gif|webp|svg)$/i.test(t))return tooltipContent.innerHTML='<img src="'+t+'" style="max-width:100%;height:auto;" />',tooltipWrapper.scrollTop=0,void setTimeout((function(){positionTooltip(o),tooltipWrapper.style.opacity=1}),1);linkHistories[t]?(tooltipContent.innerHTML=linkHistories[t],setTimeout((function(){if(positionTooltip(o),tooltipWrapper.style.opacity=1,-1!=e.indexOf("#")){let t=e.split("#")[1];const o=tooltipWrapper.querySelector(`[id='${t}']`);o.classList.add("referred"),o.scrollIntoView({behavior:"smooth"},!0)}else tooltipWrapper.scroll(0,0)}),1)):(iframe.src=t,iframe.onload=function(){let i,p;try{i=iframe.contentWindow,p=i?i.document:null}catch(t){return tooltipContent.innerHTML="<div>Preview not available for this file.</div>",tooltipWrapper.scrollTop=0,void setTimeout((function(){positionTooltip(o),tooltipWrapper.style.opacity=1}),1)}if(!p)return;const n=p.querySelector("h1"),l=p.querySelector(".content");if(tooltipContentHtml="",n&&(tooltipContentHtml+='<div style="font-weight: bold; unicode-bidi: plaintext;">'+n.innerHTML+"</div>"),l)tooltipContentHtml+=l.innerHTML;else if(p.body)tooltipContentHtml+=p.body.innerHTML;else{if(!p.documentElement)return;tooltipContentHtml+=p.documentElement.innerHTML}tooltipContent.innerHTML=tooltipContentHtml,linkHistories[t]=tooltipContentHtml,tooltipWrapper.scrollTop=0,setTimeout((function(){if(positionTooltip(o),tooltipWrapper.style.opacity=1,-1!=e.indexOf("#")){let t=e.split("#")[1];const o=tooltipWrapper.querySelector(`[id='${t}']`);o.classList.add("referred"),console.log(o),o.scrollIntoView({behavior:"smooth"},!0)}else tooltipWrapper.scroll(0,0)}),1)}),positionTooltip(o)}}}function setupListeners(t){t.addEventListener("mouseleave",(function(t){hideTooltip()})),tooltipWrapper.addEventListener("mouseleave",(function(t){hideTooltip()})),t.addEventListener("mouseenter",(function(t){clearTimeout(opacityTimeout),clearTimeout(contentTimeout),showTooltip(t)})),tooltipWrapper.addEventListener("mouseenter",(function(t){clearTimeout(opacityTimeout),clearTimeout(contentTimeout)}))}window.addEventListener("load",(function(t){document.querySelectorAll(".internal-link").forEach(setupListeners),document.querySelectorAll(".backlink-card a").forEach(setupListeners)}))</script>
vendor: 1 bytes, line 143
143
144<script>window.location.hash&&document.getElementById(window.location.hash.slice(1)).classList.add("referred"),window.addEventListener("hashchange",(e=>{const t=e.oldURL.split("#");t[1]&&document.getElementById(t[1]).classList.remove("referred");const n=e.newURL.split("#");n[1]&&document.getElementById(n[1]).classList.add("referred")}),!1);const url_parts=window.location.href.split("#"),url=url_parts[0],referrence=url_parts[1];document.querySelectorAll(".cm-s-obsidian > *[id]").forEach((function(e){e.ondblclick=function(e){const t=url+"#"+e.target.id;navigator.clipboard.writeText(t)}}))</script>
vendor: 1 bytes, line 144
144
145<script src="https://fastly.jsdelivr.net/npm/[email protected]/build/global/luxon.min.js"></script>
vendor: 1 bytes, line 145
145
146<script defer="defer">TIMESTAMP_FORMAT="MMM dd, yyyy h:mm a",DATE_FORMAT="MMM dd, yyyy",document.querySelectorAll(".human-date").forEach((function(e){try{date=e.getAttribute("data-date")||e.innerText,format=/^\d{4}-\d{2}-\d{2}$/.test(date.trim())?DATE_FORMAT:TIMESTAMP_FORMAT,parsed_date=luxon.DateTime.fromISO(date),null!=parsed_date.invalid&&(parsed_date=luxon.DateTime.fromSQL(date)),null!=parsed_date.invalid&&(parsed_date=luxon.DateTime.fromHTTP(date)),null==parsed_date.invalid&&(e.innerHTML=parsed_date.toFormat(format))}catch(e){}}))</script>
146 147<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fancyapps/[email protected]/dist/fancybox/fancybox.css">
148<script src="https://cdn.jsdelivr.net/npm/@fancyapps/[email protected]/dist/fancybox/fancybox.umd.js"></script>
vendor: 1 bytes, line 148
148
149<script>function wrap(e,o){e.parentNode.insertBefore(o,e),o.appendChild(e)}document.querySelectorAll("img").forEach((e=>{const o=document.createElement("a");o.href=e.src,o.dataset.fancybox=!0,wrap(e,o)})),Fancybox.bind("[data-fancybox]",{zoomEffect:!0,Carousel:{Toolbar:{display:{left:["zoomIn","zoomOut"],middle:[],right:["thumbs","fullscreen","close"]}}}})</script>
149 150<hr> 151<html> 152<center><p style="font-size:12px">See an error? Something you want included? Leave a comment via the comment section above or <a href="https://cospringshistory.lgbt/about/contribute-to-the-project/contribute-to-the-project/">Contribute to the Project!</a></p> 153<p style="font-size:12px">Research and writing within is by Nico Wilkinson, unless otherwise stated.</p></center> 154</html>
155<script defer="defer" src="https://unpkg.com/lucide@latest"></script>
vendor: 1 bytes, line 155
155
156<script defer="defer">document.addEventListener("DOMContentLoaded",(()=>{lucide.createIcons({attrs:{class:["svg-icon"]}})}))</script>
vendor: 1 bytes, line 156
156
157<script>document.addEventListener("DOMContentLoaded",(function(){document.querySelectorAll(".obsidian-bases-views").forEach((function(e){var t=e.querySelector(".obsidian-bases-active-view"),a=e.querySelector(".obsidian-bases-dropdown"),i=e.querySelectorAll(".obsidian-bases-dropdown-item"),n=e.querySelectorAll(".obsidian-bases-view-panel"),o=e.querySelector(".obsidian-bases-active-view-name"),r=e.querySelector(".obsidian-bases-count-value");t&&a&&(t.addEventListener("click",(function(e){e.stopPropagation();var i="none"!==a.style.display;a.style.display=i?"none":"block",t.setAttribute("aria-expanded",!i)})),document.addEventListener("click",(function(){a.style.display="none",t.setAttribute("aria-expanded","false")})),i.forEach((function(s){s.addEventListener("click",(function(s){s.stopPropagation();var d=this.getAttribute("data-view-index");i.forEach((function(e){e.classList.remove("active")})),this.classList.add("active"),n.forEach((function(e){e.style.display="none"}));var l=e.querySelector('.obsidian-bases-view-panel[data-view-index="'+d+'"]');l&&(l.style.display="block");var c=this.querySelector(".obsidian-bases-view-icon"),u=t.querySelector(".obsidian-bases-view-icon");if(c&&u&&u.replaceWith(c.cloneNode(!0)),o&&(o.textContent=this.textContent.trim()),r&&l){var b=l.querySelectorAll("tbody tr:not(.obsidian-base-group-row), .obsidian-base-card, .obsidian-base-list li");r.textContent=b.length}a.style.display="none",t.setAttribute("aria-expanded","false")}))})))})),document.querySelectorAll(".bases-dynamic-date").forEach((function(e){var t=e.getAttribute("data-type"),a=new Date;if("today"===t){var i=a.getFullYear(),n=String(a.getMonth()+1).padStart(2,"0"),o=String(a.getDate()).padStart(2,"0");e.textContent=i+"-"+n+"-"+o}else if("now"===t){i=a.getFullYear(),n=String(a.getMonth()+1).padStart(2,"0"),o=String(a.getDate()).padStart(2,"0");var r=String(a.getHours()).padStart(2,"0"),s=String(a.getMinutes()).padStart(2,"0");e.textContent=i+"-"+n+"-"+o+" "+r+":"+s}}))}))</script>
157 158</body> 159</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.