<!DOCTYPE html>











	
	




	<meta name="apple-mobile-web-app-title" content="GRC Public Forums">
	


	
	


















	



















	











	

































	



























	









































<html id="XF" lang="en-US" dir="LTR"
	  style="font-size: 62.5%;"
	  data-app="public"
	  data-template="forum_view"
	  data-container-key="node-14"
	  data-content-key="forum-14"
	  data-logged-in="false"
	  data-cookie-prefix="grc_"
	  data-csrf="1776574096,03e744a9629690e7a9e76880837848e5"
	  class="has-no-js template-forum_view  uix_page--fixed uix_hasSectionLinks "
	  >
	<head>
		<meta charset="utf-8" />
		<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
		<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">

		

		<title>Steve&#039;s Blog | GRC Public Forums</title>
		<link rel="manifest" href="/webmanifest.php">
		
			<meta name="theme-color" content="#800008" />
			<meta name="msapplication-TileColor" content="#800008">
		
		<meta name="apple-mobile-web-app-title" content="GRC Public Forums">
		

		
			<script src="//code.iconify.design/1/1.0.0-rc5/iconify.min.js"></script>
		
			<link rel="canonical" href="https://forums.grc.com/forums/blog/" />
		
			<link rel="alternate" type="application/rss+xml" title="RSS feed for Steve&#039;s Blog" href="/forums/blog/index.rss" />
		

		
			
	
	
	<meta property="og:site_name" content="GRC Public Forums" />


		
		
			
	
	
	<meta property="og:type" content="website" />


		
		
			
	
	
	
		<meta property="og:title" content="Steve&#039;s Blog" />
		<meta property="twitter:title" content="Steve&#039;s Blog" />
	


		
		
			
	
	
	
		<meta name="description" content="A place for me to periodically post the status of my work." />
		<meta property="og:description" content="A place for me to periodically post the status of my work." />
		<meta property="twitter:description" content="A place for me to periodically post the status of my work." />
	


		
		
			
	
	
	<meta property="og:url" content="https://forums.grc.com/forums/blog/" />


		
		

		
	

	

	
		
	

	<link rel="stylesheet" href="/css.php?css=public%3Anormalize.css%2Cpublic%3Afa.css%2Cpublic%3Acore.less%2Cpublic%3Aapp.less&amp;s=3&amp;l=1&amp;d=1765985776&amp;k=7497705b1bf13b12b6e4fb26311a18e7d63c8702" />

	
		<link rel="preload" href="/styles/uix/fonts/icons/material-icons/fonts/materialdesignicons-webfont.woff2?v=6.9.96" as="font" type="font/woff2" crossorigin="anonymous" />
		<link rel="stylesheet" href="/styles/uix/fonts/icons/material-icons/css/materialdesignicons.min.css?d=1765985775" />	
	

	<link rel="stylesheet" href="/content/css/webfonts.css" />	

	
	
	

	<link rel="stylesheet" href="/css.php?css=public%3Aandy_quicksearch.less%2Cpublic%3Anotices.less%2Cpublic%3Astructured_list.less%2Cpublic%3AsvAlertImprovements.less%2Cpublic%3AsvESE_autocomplete.less%2Cpublic%3Auix.less%2Cpublic%3Auix_socialMedia.less%2Cpublic%3Aextra.less&amp;s=3&amp;l=1&amp;d=1765985776&amp;k=118de28d1bb6f90c89aafb54aa6c0f2a0d7fe1c5" />

	
	
		<script src="/js/xf/preamble.min.js?_v=24d2ea07"></script>
	
	
	<meta name="apple-mobile-web-app-capable" content="yes">


		
			<link rel="icon" type="image/png" href="https://forums.grc.com/styles/default/grc/favicon-32x32.png" sizes="32x32" />
		
		
		

		

		

	
	
	
		
	


</head>

	<body data-template="forum_view">
		<style>
	.p-pageWrapper .p-navSticky {
		top: 0 !important;
	}

	

	
	

	
	
	
		
			
			
				
			
		
	

	

	

		
		
		.uix_mainTabBar {top: 80px !important;}
		.uix_stickyBodyElement:not(.offCanvasMenu) {
			top: 100px !important;
			min-height: calc(100vh - 100px) !important;
		}
		.uix_sidebarInner .uix_sidebar--scroller {margin-top: 100px;}
		.uix_sidebarInner {margin-top: -100px;}
		.p-body-sideNavInner .uix_sidebar--scroller {margin-top: 100px;}
		.p-body-sideNavInner {margin-top: -100px;}
		.uix_stickyCategoryStrips {top: 100px !important;}
		#XF .u-anchorTarget {
			height: 100px;
			margin-top: -100px;
		}
	
		

		
			@media (max-width: 900px) {
		
				.p-sectionLinks {display: none;}

				

				.uix_mainTabBar {top: 40px !important;}
				.uix_stickyBodyElement:not(.offCanvasMenu) {
					top: 60px !important;
					min-height: calc(100vh - 60px) !important;
				}
				.uix_sidebarInner .uix_sidebar--scroller {margin-top: 60px;}
				.uix_sidebarInner {margin-top: -60px;}
				.p-body-sideNavInner .uix_sidebar--scroller {margin-top: 60px;}
				.p-body-sideNavInner {margin-top: -60px;}
				.uix_stickyCategoryStrips {top: 60px !important;}
				#XF .u-anchorTarget {
					height: 60px;
					margin-top: -60px;
				}

				
		
			}
		
	

	.uix_sidebarNav .uix_sidebar--scroller {max-height: calc(100vh - 60px);}
	
	
</style>


		<div id="jumpToTop"></div>

		

		<div class="uix_pageWrapper--fixed">
			<div class="p-pageWrapper" id="top">

				
					
	
	



					

					

					
						
						
							<header class="p-header" id="header">
								<div class="p-header-inner">
									
						
							<div class="p-header-content">
								
									
										
	
	<div class="p-header-logo p-header-logo--image">
		<a class="uix_logo" href="/">
			
				<div class="uix_logo--text">GRC</div>
			
		</a>
		
	</div>


									

									
										<div class="p-nav-opposite">
											
												
		
			
				
				
					<div class="p-navgroup p-discovery">
						
							
	

							
	
		
		
			<div class="uix_searchBar">
				<div class="uix_searchBarInner">
					<form action="/search/search" method="post" class="uix_searchForm" data-xf-init="quick-search" data-autocomplete-filter="null">
						<a class="uix_search--close">
							<i class="fa--xf far fa-window-close" aria-hidden="true"></i>
						</a>
						<input type="text" class="input js-uix_syncValue uix_searchInput uix_searchDropdown__trigger" autocomplete="off" data-uixsync="search" name="keywords" placeholder="Search…" aria-label="Search" data-menu-autofocus="true" />
						<a href="/search/"
						   class="uix_search--settings u-ripple"
						   data-xf-key="/"
						   aria-label="Search"
						   aria-expanded="false"
						   aria-haspopup="true"
						   title="Search">
							<i class="fa--xf far fa-cog" aria-hidden="true"></i>
						</a>
						<span class=" uix_searchIcon">
							<i class="fa--xf far fa-search" aria-hidden="true"></i>
						</span>
						<input type="hidden" name="_xfToken" value="1776574096,03e744a9629690e7a9e76880837848e5" />
					</form>
				</div>

				
					<a class="uix_searchIconTrigger p-navgroup-link p-navgroup-link--iconic p-navgroup-link--search u-ripple"
					   aria-label="Search"
					   aria-expanded="false"
					   aria-haspopup="true"
					   title="Search">
						<i aria-hidden="true"></i>
					</a>
				

				
					<a href="/search/"
					   class="p-navgroup-link p-navgroup-link--iconic p-navgroup-link--search u-ripple js-uix_minimalSearch__target"
					   data-xf-click="menu"
					   aria-label="Search"
					   aria-expanded="false"
					   aria-haspopup="true"
					   title="Search">
						<i aria-hidden="true"></i>
					</a>
				

				<div class="menu menu--structural menu--wide" data-menu="menu" aria-hidden="true">
					<form action="/search/search" method="post"
						  class="menu-content"
						  data-xf-init="quick-search" data-autocomplete-filter="null">
						<h3 class="menu-header">Search</h3>
						
						<div class="menu-row">
							
								<div class="inputGroup inputGroup--joined">
									<input type="text" class="input js-uix_syncValue" name="keywords" data-uixsync="search" placeholder="Search…" aria-label="Search" data-menu-autofocus="true" />
									




			<select name="constraints" class="js-quickSearch-constraint input" aria-label="Search within">
				<option value="">Everywhere</option>
<option value="{&quot;search_type&quot;:&quot;post&quot;}">Threads</option>
<option value="{&quot;search_type&quot;:&quot;post&quot;,&quot;c&quot;:{&quot;nodes&quot;:[14],&quot;child_nodes&quot;:1}}">This forum</option>

			</select>
		
								</div>
								
						</div>


	
		<div class="menu-row">
			
				
	
		
		

		
			<label class="iconic"><input type="checkbox"  name="c[container_only]" value="1" /><i aria-hidden="true"></i><span class="iconic-label">Search titles and first posts only</span></label>

		
	

			
		</div>
	

						
						<div class="menu-row">
							<label class="iconic"><input type="checkbox"  name="c[title_only]" value="1" /><i aria-hidden="true"></i><span class="iconic-label">Search titles only</span></label>

						</div>
						
						<div class="menu-row">
							<div class="inputGroup">
								<span class="inputGroup-text" id="ctrl_search_menu_by_member">By:</span>
								<input type="text" class="input" name="c[users]" data-xf-init="auto-complete" placeholder="Member" aria-labelledby="ctrl_search_menu_by_member" />
							</div>
						</div>
						<div class="menu-footer">
							<span class="menu-footer-controls">
								<button type="submit" class="button--primary button button--icon button--icon--search"><span class="button-text">Search</span></button>
								<a href="/search/" class="button"><span class="button-text">Advanced search…</span></a>
							</span>
						</div>

						<input type="hidden" name="_xfToken" value="1776574096,03e744a9629690e7a9e76880837848e5" />
					</form>
				</div>


				<div class="menu menu--structural menu--wide uix_searchDropdown__menu" aria-hidden="true">
					<form action="/search/search" method="post"
						  class="menu-content"
						  data-xf-init="quick-search" data-autocomplete-filter="null">
						
						
							<div class="menu-row">

								<div class="inputGroup">
									<input name="keywords"
										   class="js-uix_syncValue"
										   data-uixsync="search"
										   placeholder="Search…"
										   aria-label="Search"
										   type="hidden" />
									




			<select name="constraints" class="js-quickSearch-constraint input" aria-label="Search within">
				<option value="">Everywhere</option>
<option value="{&quot;search_type&quot;:&quot;post&quot;}">Threads</option>
<option value="{&quot;search_type&quot;:&quot;post&quot;,&quot;c&quot;:{&quot;nodes&quot;:[14],&quot;child_nodes&quot;:1}}">This forum</option>

			</select>
		
								</div>
							</div>
							


	
		<div class="menu-row">
			
				
	
		
		

		
			<label class="iconic"><input type="checkbox"  name="c[container_only]" value="1" /><i aria-hidden="true"></i><span class="iconic-label">Search titles and first posts only</span></label>

		
	

			
		</div>
	

						
						<div class="menu-row">
							<label class="iconic"><input type="checkbox"  name="c[title_only]" value="1" /><i aria-hidden="true"></i><span class="iconic-label">Search titles only</span></label>

						</div>
						
						<div class="menu-row">
							<div class="inputGroup">
								<span class="inputGroup-text">By:</span>
								<input class="input" name="c[users]" data-xf-init="auto-complete" placeholder="Member" />
							</div>
						</div>
						<div class="menu-footer">
							<span class="menu-footer-controls">
								<button type="submit" class="button--primary button button--icon button--icon--search"><span class="button-text">Search</span></button>
								<a href="/search/" class="button" rel="nofollow"><span class="button-text">Advanced…</span></a>
							</span>
						</div>

						<input type="hidden" name="_xfToken" value="1776574096,03e744a9629690e7a9e76880837848e5" />
					</form>
				</div>
			</div>
		
	
	

						
					</div>
				
				
	

			
		
	
											
										</div>
									
								
							</div>
						
					
								</div>
							</header>
						
					
					

					
					
					

					
						<div class="p-navSticky p-navSticky--all " data-top-offset-breakpoints="
						[
							{
								&quot;breakpoint&quot;: &quot;0&quot;,
								&quot;offset&quot;: &quot;0&quot;
							}
							
							
						]
					" data-xf-init="sticky-header">
							
						<nav class="p-nav">
							<div class="p-nav-inner">
								
									
									
										
										
									<button type="button" class="button--plain p-nav-menuTrigger js-uix_badge--totalUnread badgeContainer button" data-badge="0" data-xf-click="off-canvas" data-menu=".js-headerOffCanvasMenu" role="button" tabindex="0" aria-label="Menu"><span class="button-text">
										<i aria-hidden="true"></i>
									</span></button>
									
								

								
	
	<div class="p-header-logo p-header-logo--image">
		<a class="uix_logo" href="/">
			
				<div class="uix_logo--text">GRC</div>
			
		</a>
		
	</div>



								
									
										<div class="p-nav-scroller hScroller" data-xf-init="h-scroller" data-auto-scroll=".p-navEl.is-selected">
											<div class="hScroller-scroll">
												<ul class="p-nav-list js-offCanvasNavSource">
													
														<li>
															
	<div class="p-navEl u-ripple is-selected" data-has-children="true">
		
			
				
	
	<a href="/"
			class="p-navEl-link p-navEl-link--splitMenu "
			
			
			data-nav-id="forums"><span>Forums</span></a>

				
					<a data-xf-key="1"
					   data-xf-click="menu"
					   data-menu-pos-ref="< .p-navEl"
					   class="p-navEl-splitTrigger"
					   role="button"
					   tabindex="0"
					   aria-label="Toggle expanded"
					   aria-expanded="false"
					   aria-haspopup="true">
					</a>
				
				
			
				
					<div class="menu menu--structural" data-menu="menu" aria-hidden="true">
						<div class="menu-content">
							
								
	
	
	<a href="/whats-new/posts/"
			class="menu-linkRow u-ripple u-indentDepth0 js-offCanvasCopy "
			
			
			data-nav-id="newPosts"><span>New posts</span></a>

	

							
								
	
	
	<a href="/search/?type=post"
			class="menu-linkRow u-ripple u-indentDepth0 js-offCanvasCopy "
			
			
			data-nav-id="searchForums"><span>Search forums</span></a>

	

							
						</div>
					</div>
				
			
			
			
		
			
	
</div>

														</li>
													
														<li>
															
	<div class="p-navEl u-ripple " data-has-children="true">
		
			
				
	
	<a href="/whats-new/posts/"
			class="p-navEl-link p-navEl-link--splitMenu "
			
			
			data-nav-id="whatsNew"><span>What's New For Me</span></a>

				
					<a data-xf-key="2"
					   data-xf-click="menu"
					   data-menu-pos-ref="< .p-navEl"
					   class="p-navEl-splitTrigger"
					   role="button"
					   tabindex="0"
					   aria-label="Toggle expanded"
					   aria-expanded="false"
					   aria-haspopup="true">
					</a>
				
				
			
				
					<div class="menu menu--structural" data-menu="menu" aria-hidden="true">
						<div class="menu-content">
							
								
	
	
	<a href="/whats-new/posts/"
			class="menu-linkRow u-ripple u-indentDepth0 js-offCanvasCopy "
			 rel="nofollow"
			
			data-nav-id="whatsNewPosts"><span>New posts</span></a>

	

							
								
	
	
	<a href="/whats-new/profile-posts/"
			class="menu-linkRow u-ripple u-indentDepth0 js-offCanvasCopy "
			 rel="nofollow"
			
			data-nav-id="whatsNewProfilePosts"><span>New profile posts</span></a>

	

							
								
	
	
	<a href="/whats-new/latest-activity"
			class="menu-linkRow u-ripple u-indentDepth0 js-offCanvasCopy "
			 rel="nofollow"
			
			data-nav-id="latestActivity"><span>Latest activity</span></a>

	

							
						</div>
					</div>
				
			
			
			
		
			
	
</div>

														</li>
													
														<li>
															
	<div class="p-navEl u-ripple " >
		
			
				
	
	<a href="/forums/blog/"
			class="p-navEl-link  "
			
			data-xf-key="3"
			data-nav-id="blog"><span>Steve's Blog</span></a>

				
				
			
			
			
		
			
	
</div>

														</li>
													
														<li>
															
	<div class="p-navEl u-ripple " data-has-children="true">
		
			
				
	
	<a href="/members/"
			class="p-navEl-link p-navEl-link--splitMenu "
			
			
			data-nav-id="members"><span>Members</span></a>

				
					<a data-xf-key="4"
					   data-xf-click="menu"
					   data-menu-pos-ref="< .p-navEl"
					   class="p-navEl-splitTrigger"
					   role="button"
					   tabindex="0"
					   aria-label="Toggle expanded"
					   aria-expanded="false"
					   aria-haspopup="true">
					</a>
				
				
			
				
					<div class="menu menu--structural" data-menu="menu" aria-hidden="true">
						<div class="menu-content">
							
								
	
	
	<a href="/online/"
			class="menu-linkRow u-ripple u-indentDepth0 js-offCanvasCopy "
			
			
			data-nav-id="currentVisitors"><span>Current visitors</span></a>

	

							
								
	
	
	<a href="/whats-new/profile-posts/"
			class="menu-linkRow u-ripple u-indentDepth0 js-offCanvasCopy "
			 rel="nofollow"
			
			data-nav-id="newProfilePosts"><span>New profile posts</span></a>

	

							
								
	
	
	<a href="/search/?type=profile_post"
			class="menu-linkRow u-ripple u-indentDepth0 js-offCanvasCopy "
			
			
			data-nav-id="searchProfilePosts"><span>Search profile posts</span></a>

	

							
						</div>
					</div>
				
			
			
			
		
			
	
</div>

														</li>
													
														<li>
															
	<div class="p-navEl u-ripple " >
		
			
				
	
	<a href="https://sqrl.grc.com"
			class="p-navEl-link  "
			
			data-xf-key="5"
			data-nav-id="sqrl"><span>SQRL Forums</span></a>

				
				
			
			
			
		
			
	
</div>

														</li>
													
												</ul>
											</div>
										</div>
									

									
								

								
	


								
									<div class="p-nav-opposite">
										
											
		
			
				
					<div class="p-navgroup p-account p-navgroup--guest">
						
							
								
	
		
		
	
		
			<a href="/login/" class="p-navgroup-link p-navgroup-link--textual p-navgroup-link--logIn" data-xf-click="menu">
				<i></i>
				<span class="p-navgroup-linkText">Log in</span>
			</a>
			<div class="menu menu--structural menu--medium" data-menu="menu" aria-hidden="true" data-href="/login/"></div>
		
	
	
		
			<a href="/register/" class="p-navgroup-link u-ripple p-navgroup-link--textual p-navgroup-link--register" data-xf-click="overlay" data-follow-redirects="on">
				<i></i>
				<span class="p-navgroup-linkText">Register</span>
			</a>
		
	

	

							
						
					</div>
				
				
					<div class="p-navgroup p-discovery">
						
							
	
		
	

							
	
		
		
			<div class="uix_searchBar">
				<div class="uix_searchBarInner">
					<form action="/search/search" method="post" class="uix_searchForm" data-xf-init="quick-search" data-autocomplete-filter="null">
						<a class="uix_search--close">
							<i class="fa--xf far fa-window-close" aria-hidden="true"></i>
						</a>
						<input type="text" class="input js-uix_syncValue uix_searchInput uix_searchDropdown__trigger" autocomplete="off" data-uixsync="search" name="keywords" placeholder="Search…" aria-label="Search" data-menu-autofocus="true" />
						<a href="/search/"
						   class="uix_search--settings u-ripple"
						   data-xf-key="/"
						   aria-label="Search"
						   aria-expanded="false"
						   aria-haspopup="true"
						   title="Search">
							<i class="fa--xf far fa-cog" aria-hidden="true"></i>
						</a>
						<span class=" uix_searchIcon">
							<i class="fa--xf far fa-search" aria-hidden="true"></i>
						</span>
						<input type="hidden" name="_xfToken" value="1776574096,03e744a9629690e7a9e76880837848e5" />
					</form>
				</div>

				
					<a class="uix_searchIconTrigger p-navgroup-link p-navgroup-link--iconic p-navgroup-link--search u-ripple"
					   aria-label="Search"
					   aria-expanded="false"
					   aria-haspopup="true"
					   title="Search">
						<i aria-hidden="true"></i>
					</a>
				

				
					<a href="/search/"
					   class="p-navgroup-link p-navgroup-link--iconic p-navgroup-link--search u-ripple js-uix_minimalSearch__target"
					   data-xf-click="menu"
					   aria-label="Search"
					   aria-expanded="false"
					   aria-haspopup="true"
					   title="Search">
						<i aria-hidden="true"></i>
					</a>
				

				<div class="menu menu--structural menu--wide" data-menu="menu" aria-hidden="true">
					<form action="/search/search" method="post"
						  class="menu-content"
						  data-xf-init="quick-search" data-autocomplete-filter="null">
						<h3 class="menu-header">Search</h3>
						
						<div class="menu-row">
							
								<div class="inputGroup inputGroup--joined">
									<input type="text" class="input js-uix_syncValue" name="keywords" data-uixsync="search" placeholder="Search…" aria-label="Search" data-menu-autofocus="true" />
									




			<select name="constraints" class="js-quickSearch-constraint input" aria-label="Search within">
				<option value="">Everywhere</option>
<option value="{&quot;search_type&quot;:&quot;post&quot;}">Threads</option>
<option value="{&quot;search_type&quot;:&quot;post&quot;,&quot;c&quot;:{&quot;nodes&quot;:[14],&quot;child_nodes&quot;:1}}">This forum</option>

			</select>
		
								</div>
								
						</div>


	
		<div class="menu-row">
			
				
	
		
		

		
			<label class="iconic"><input type="checkbox"  name="c[container_only]" value="1" /><i aria-hidden="true"></i><span class="iconic-label">Search titles and first posts only</span></label>

		
	

			
		</div>
	

						
						<div class="menu-row">
							<label class="iconic"><input type="checkbox"  name="c[title_only]" value="1" /><i aria-hidden="true"></i><span class="iconic-label">Search titles only</span></label>

						</div>
						
						<div class="menu-row">
							<div class="inputGroup">
								<span class="inputGroup-text" id="ctrl_search_menu_by_member">By:</span>
								<input type="text" class="input" name="c[users]" data-xf-init="auto-complete" placeholder="Member" aria-labelledby="ctrl_search_menu_by_member" />
							</div>
						</div>
						<div class="menu-footer">
							<span class="menu-footer-controls">
								<button type="submit" class="button--primary button button--icon button--icon--search"><span class="button-text">Search</span></button>
								<a href="/search/" class="button"><span class="button-text">Advanced search…</span></a>
							</span>
						</div>

						<input type="hidden" name="_xfToken" value="1776574096,03e744a9629690e7a9e76880837848e5" />
					</form>
				</div>


				<div class="menu menu--structural menu--wide uix_searchDropdown__menu" aria-hidden="true">
					<form action="/search/search" method="post"
						  class="menu-content"
						  data-xf-init="quick-search" data-autocomplete-filter="null">
						
						
							<div class="menu-row">

								<div class="inputGroup">
									<input name="keywords"
										   class="js-uix_syncValue"
										   data-uixsync="search"
										   placeholder="Search…"
										   aria-label="Search"
										   type="hidden" />
									




			<select name="constraints" class="js-quickSearch-constraint input" aria-label="Search within">
				<option value="">Everywhere</option>
<option value="{&quot;search_type&quot;:&quot;post&quot;}">Threads</option>
<option value="{&quot;search_type&quot;:&quot;post&quot;,&quot;c&quot;:{&quot;nodes&quot;:[14],&quot;child_nodes&quot;:1}}">This forum</option>

			</select>
		
								</div>
							</div>
							


	
		<div class="menu-row">
			
				
	
		
		

		
			<label class="iconic"><input type="checkbox"  name="c[container_only]" value="1" /><i aria-hidden="true"></i><span class="iconic-label">Search titles and first posts only</span></label>

		
	

			
		</div>
	

						
						<div class="menu-row">
							<label class="iconic"><input type="checkbox"  name="c[title_only]" value="1" /><i aria-hidden="true"></i><span class="iconic-label">Search titles only</span></label>

						</div>
						
						<div class="menu-row">
							<div class="inputGroup">
								<span class="inputGroup-text">By:</span>
								<input class="input" name="c[users]" data-xf-init="auto-complete" placeholder="Member" />
							</div>
						</div>
						<div class="menu-footer">
							<span class="menu-footer-controls">
								<button type="submit" class="button--primary button button--icon button--icon--search"><span class="button-text">Search</span></button>
								<a href="/search/" class="button" rel="nofollow"><span class="button-text">Advanced…</span></a>
							</span>
						</div>

						<input type="hidden" name="_xfToken" value="1776574096,03e744a9629690e7a9e76880837848e5" />
					</form>
				</div>
			</div>
		
	
	

						
					</div>
				
				
	

			
		
	
											
	
		
	

	

										
									</div>
								
							</div>
							
						</nav>
					
							
		
			<div class="p-sectionLinks">
				<div class="pageContent">
					
						
							
								
								
								<div class="p-sectionLinks-inner hScroller" data-xf-init="h-scroller">
									<div class="hScroller-scroll">
										<ul class="p-sectionLinks-list">
											
												<li>
													
	<div class="p-navEl u-ripple " >
		
			
				
	
	<a href="/whats-new/posts/"
			class="p-navEl-link  "
			
			data-xf-key="alt+1"
			data-nav-id="newPosts"><span>New posts</span></a>

				
				
			
			
			
		
			
	
</div>

												</li>
											
												<li>
													
	<div class="p-navEl u-ripple " >
		
			
				
	
	<a href="/search/?type=post"
			class="p-navEl-link  "
			
			data-xf-key="alt+2"
			data-nav-id="searchForums"><span>Search forums</span></a>

				
				
			
			
			
		
			
	
</div>

												</li>
											
										</ul>
									</div>
								</div>
							
							
						
					
				</div>
			</div>
			
	
						</div>
						

					

					
	

					
	

					
	

					
	

					
				

				
				<div class="offCanvasMenu offCanvasMenu--nav js-headerOffCanvasMenu" data-menu="menu" aria-hidden="true" data-ocm-builder="navigation">
					<div class="offCanvasMenu-backdrop" data-menu-close="true"></div>
					<div class="offCanvasMenu-content">
						
						<div class="sidePanel sidePanel--nav sidePanel--visitor">
	<div class="sidePanel__tabPanels">
		
		<div data-content="navigation" class="is-active sidePanel__tabPanel js-navigationTabPanel">
			
							<div class="offCanvasMenu-header">
								Menu
								<a class="offCanvasMenu-closer" data-menu-close="true" role="button" tabindex="0" aria-label="Close"></a>
							</div>
							
							<div class="js-offCanvasNavTarget"></div>
							
							
						
		</div>
		
		
		
	</div>
</div>

						
						<div class="offCanvasMenu-installBanner js-installPromptContainer" style="display: none;" data-xf-init="install-prompt">
							<div class="offCanvasMenu-installBanner-header">Install the app</div>
							<button type="button" class="js-installPromptButton button"><span class="button-text">Install</span></button>
							<template class="js-installTemplateIOS">
								<div class="overlay-title">How to install the app on iOS</div>
								<div class="block-body">
									<div class="block-row">
										<p>
											Follow along with the video below to see how to install our site as a web app on your home screen.
										</p>
										<p style="text-align: center">
											<video src="/styles/default/xenforo/add_to_home.mp4"
								                width="280" height="480" autoplay loop muted playsinline></video>
										</p>
										<p>
											<small><strong>Note:</strong> This feature may not be available in some browsers.</small>
										</p>
									</div>
								</div>
							</template>
						</div>
					</div>
				</div>

				
	
		
	
		
			
			<div class="p-body-header">
			
				<div class="pageContent">
					
						
							<div class="uix_headerInner">
								
				<div class="test">
									
										<div class="p-title ">
											
												
													<h1 class="p-title-value">Steve&#039;s Blog</h1>
												
											
										</div>
									

									
										<div class="p-description">A place for me to periodically post the status of my work.</div>
									
								</div>
			
							</div>
						
						
					
				</div>
			</div>
		
	

	


				<div class="p-body">

					

					<div class="p-body-inner ">
						
						<!--XF:EXTRA_OUTPUT-->

						
	
		
	
		
			
	
		
		
		

		<ul class="notices notices--block notices--isMulti js-notices"
			data-xf-init="notices"
			data-type="block"
			data-scroll-interval="6">

			
				
	<li class="notice js-notice notice--primary"
		data-notice-id="5"
		data-delay-duration="0"
		data-display-duration="0"
		data-auto-dismiss=""
		data-visibility="">
		
		<div class="uix_noticeInner">
			
			<div class="uix_noticeIcon">
				
					<i class="fa--xf far fa-info-circle" aria-hidden="true"></i>
				
			</div>

			
			<div class="notice-content">
				
					<a href="/account/dismiss-notice?notice_id=5" class="notice-dismiss js-noticeDismiss" data-xf-init="tooltip" title="Dismiss notice"></a>
				
				<center style="font-size:18pt; font-family:'MuseoSlab-500'">DNS Benchmark <b>v2</b> is Finished and Available!</center><b>Guest:</b><br/>That's right. It took an entire year, but the result far more accurate and feature laden than we originally planned. The world now has a universal, multi-protocol, super-accurate, DNS resolver performance-measuring tool. This major second version is not free. But the deal is, purchase it once for $9.95 and you own it — and it's entire future — without ever being asked to pay anything more. For an overview list of features and more, please see <a href="https://www.grc.com/dns/benchmark.htm"><b><i>The DNS Benchmark page</i></b></a> at GRC. If you decide to make it your own, thanks in advance. It's a piece of work I'm proud to offer for sale. And if you should have any questions, many of the people who have been using and testing it throughout the past year often hang out here.<br/>/Steve.
			</div>
		</div>
	</li>

			
				
	<li class="notice js-notice notice--accent"
		data-notice-id="2"
		data-delay-duration="0"
		data-display-duration="0"
		data-auto-dismiss=""
		data-visibility="">
		
		<div class="uix_noticeInner">
			
			<div class="uix_noticeIcon">
				
					<i class="fa--xf far fa-info-circle" aria-hidden="true"></i>
				
			</div>

			
			<div class="notice-content">
				
					<a href="/account/dismiss-notice?notice_id=2" class="notice-dismiss js-noticeDismiss" data-xf-init="tooltip" title="Dismiss notice"></a>
				
				<center style="font-size:18pt; font-family:'MuseoSlab-500'">Be sure to checkout “Tips &amp; Tricks”</center>
<b>Dear Guest Visitor &rarr; Once you register and log-in please checkout the “<a href="/pages/tips/"><u>Tips &amp; Tricks</u></a>” page for some very handy tips!<br/><br/>/Steve.
			</div>
		</div>
	</li>

			
				
	<li class="notice js-notice BootAble-Forum-Node"
		data-notice-id="7"
		data-delay-duration="0"
		data-display-duration="0"
		data-auto-dismiss=""
		data-visibility="">
		
		<div class="uix_noticeInner">
			
			<div class="uix_noticeIcon">
				
					<i class="fa--xf far fa-info-circle" aria-hidden="true"></i>
				
			</div>

			
			<div class="notice-content">
				
					<a href="/account/dismiss-notice?notice_id=7" class="notice-dismiss js-noticeDismiss" data-xf-init="tooltip" title="Dismiss notice"></a>
				
				<div class="BootAble-Forum-Node" style="font-size:11pt;  line-height:1.25; font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;"><a href="https://www.grc.com/files/bootable.zip"><img src="/content/images/bootable-ui.png" style="float:right; width:624px; height:495px; margin:-0.75em 0 0 2em;"></a>
	
<p style="font-size:14pt;">BootAble &#8211; FreeDOS boot testing freeware</p>

<p>To obtain direct, low-level access to a system's mass storage drives, SpinRite runs under a GRC-customized version of FreeDOS which has been modified to add compatibility with all file systems. In order to run SpinRite it must first be possible to boot FreeDOS.</p>

<p>GRC's &#8220;BootAble&#8221; freeware allows anyone to easily create BIOS-bootable media in order to workout and confirm the details of getting a machine to boot FreeDOS through a BIOS. Once the means of doing that has been determined, the media created by SpinRite can be booted and run in the same way.</p>

<p>The participants here, who have taken the time to share their knowledge and experience, their successes and some frustrations with booting their computers into FreeDOS, have created a valuable knowledgebase which will benefit everyone who follows.</p>

<p><span style="font-family: Arial, Helvetica, sans-serif; font-weight:bold;">You may click on the image to the right to obtain your own copy of BootAble.</span> Then use the knowledge and experience documented here to boot your computer(s) into FreeDOS. And please do not hesitate to ask questions &#8211; nowhere else can better answers be found.</p>

<p><i style ="font-size:9pt;">(You may permanently close this reminder with the 'X' in the upper right.)</i></p>
	
</div>
			</div>
		</div>
	</li>

			
		</ul>
	

		

		
	

	


						
	


						
	


						
	
		
	
	
	

	

	


						
	


						
	<noscript class="js-jsWarning"><div class="blockMessage blockMessage--important blockMessage--iconic u-noJsOnly">JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.</div></noscript>

						
	<div class="blockMessage blockMessage--important blockMessage--iconic js-browserWarning" style="display: none">You are using an out of date browser. It  may not display this or other websites correctly.<br />You should upgrade or use an <a href="https://www.google.com/chrome/" target="_blank" rel="noopener">alternative browser</a>.</div>



						<div uix_component="MainContainer" class="uix_contentWrapper">

							
	


							
							
	

							
	

							
	

							
	


							<div class="p-body-main  ">
								
								

								
	

								<div uix_component="MainContent" class="p-body-content">
									<!-- ABOVE MAIN CONTENT -->
									
	

									
	

									
	

									
	

									
	

									<div class="p-body-pageContent">
										
	

										
	

										
	

										
	

										
	

										









	
	
	






	

	
		
	
















	
<div class="block-container quicksearch">
	<div class="block-body">
		<input type="text" class="input js-filterInput" 
			aria-label="Quick search"
			autocomplete="off" 
			data-no-auto-focus="true" 
			disabled="disabled" 
			id="quickSearchTitle" 
			name="quickSearchTitle" 
			onsubmit="return handle()" 
			placeholder="Quick search…" 
			style="border:none;" 
		/>
	</div>
</div>
	


<div id="quicksearch-result"></div>	





<div class="block " data-xf-init="" data-type="thread" data-href="/inline-mod/">

	<div class="block-outer"></div>

	<div class="block-container uix_discussionList">

		
			<div class="block-filterBar">
				<div class="filterBar">
					

					<a class="filterBar-menuTrigger" data-xf-click="menu" role="button" tabindex="0" aria-expanded="false" aria-haspopup="true">Filters</a>
					<div class="menu menu--wide" data-menu="menu" aria-hidden="true"
						data-href="/forums/blog/filters"
						data-load-target=".js-filterMenuBody">
						<div class="menu-content">
							<h4 class="menu-header">Show only:</h4>
							<div class="js-filterMenuBody">
								<div class="menu-row">Loading…</div>
							</div>
						</div>
					</div>
				</div>
			</div>
		

		

		<div class="block-body">
			
				<div class="structItemContainer">
					

	
	

	



					
						
							
								<h3 class="block-minorHeader uix_threadListSeparator">
									Sticky threads
									
										<span class="uix_threadCollapseTrigger is-active"
											  data-xf-click="toggle"
											  data-storage-type="cookie"
											  data-target="< :up :next"
											  data-xf-init="toggle-storage"
											  data-storage-key="thuixfst-14">
											<i class="fa--xf far fa-chevron-down" aria-hidden="true"></i>
										</span>
									
								</h3>
							
							<div class="uix_stickyContainerOuter  is-active">
								<div class="uix_stickyContainerInner">
									<div class="structItemContainer-group structItemContainer-group--sticky">
										
											

	
	



	<div class="structItem structItem--thread thstafftracker-has-staff-post js-inlineModContainer js-threadListItem-31" data-author="Steve">

	
		<div class="structItem-cell structItem-cell--icon">
			<div class="structItem-iconContainer">
				<a href="/members/steve.1/" class="avatar avatar--s" data-user-id="1" data-xf-init="member-tooltip">
			<img src="/data/avatars/s/0/1.jpg?1600280256" srcset="/data/avatars/m/0/1.jpg?1600280256 2x" alt="Steve" class="avatar-u1-s" width="48" height="48" loading="lazy" /> 
		</a>
				
			</div>
		</div>
	

	
		<div class="structItem-cell structItem-cell--main" data-xf-init="touch-proxy">
			
				<ul class="structItem-statuses">
				
				
					
					
					
					
					

					
						
							<li>
								<i class="structItem-status structItem-status--sticky" aria-hidden="true" title="Sticky"></i>
								<span class="u-srOnly">Sticky</span>
							</li>
						
					

					
					
	<li>
		<i class="structItem-status structItem-status--staffPost"
		   aria-hidden="true" title="Contains 6 staff post(s)"></i>
		<span class="u-srOnly">
			Contains 6 staff post(s)
		</span>
	</li>



					
					
						
							
						
					
				
				
				</ul>
			
			<div class="structItem-title" uix-href="/threads/welcome-to-steve-gibsons-blog.31/">
				
				
				<a href="/threads/welcome-to-steve-gibsons-blog.31/" class="" data-tp-primary="on" data-xf-init="preview-tooltip" data-preview-url="/threads/welcome-to-steve-gibsons-blog.31/preview">Welcome to Steve Gibson&#039;s Blog</a>
			</div>

			<div class="structItem-minor">
				

				
					<ul class="structItem-parts">

						<li><a href="/members/steve.1/" class="username " dir="auto" data-user-id="1" data-xf-init="member-tooltip"><span class="username--staff username--moderator username--admin">Steve</span></a></li>
						<li class="structItem-startDate"><a href="/threads/welcome-to-steve-gibsons-blog.31/" rel="nofollow"><time  class="u-dt" dir="auto" datetime="2020-09-23T20:16:00-0700" data-time="1600917360" data-date-string="Sep 23, 2020" data-time-string="8:16 PM" title="Sep 23, 2020 at 8:16 PM">Sep 23, 2020</time></a></li>
						
						
						
							<span class="structItem-pageJump">
							
								<a href="/threads/welcome-to-steve-gibsons-blog.31/page-2">2</a>
							
								<a href="/threads/welcome-to-steve-gibsons-blog.31/page-3">3</a>
							
								<a href="/threads/welcome-to-steve-gibsons-blog.31/page-4">4</a>
							
							</span>
						
					
					
					</ul>
				
			</div>




		</div>
	

	
		<div class="structItem-cell structItem-cell--meta" title="First message reaction score: 34">
			<dl class="pairs pairs--justified">
				<dt>Replies</dt>
				<dd>69</dd>
			</dl>
			<dl class="pairs pairs--justified structItem-minor">
				<dt>Views</dt>
				<dd>77K</dd>
			</dl>
		</div>
	

	
		<div class="structItem-cell structItem-cell--latest ">
		
			
				
				<a href="/threads/welcome-to-steve-gibsons-blog.31/latest" rel="nofollow"><time  class="structItem-latestDate u-dt" dir="auto" datetime="2024-06-14T14:08:57-0700" data-time="1718399337" data-date-string="Jun 14, 2024" data-time-string="2:08 PM" title="Jun 14, 2024 at 2:08 PM">Jun 14, 2024</time></a>
				<div class="structItem-minor">
					
						<a href="/members/dave-burton.7617/" class="username " dir="auto" data-user-id="7617" data-xf-init="member-tooltip">Dave Burton</a>
					
				</div>
			
		</div>
	

	
		<div class="structItem-cell structItem-cell--icon structItem-cell--iconEnd">
			<div class="structItem-iconContainer">
				
					<a href="/members/dave-burton.7617/" class="avatar avatar--xxs" data-user-id="7617" data-xf-init="member-tooltip">
			<img src="https://secure.gravatar.com/avatar/6eb13e72af7d9df244f611ae3472965e?s=48"  alt="Dave Burton" class="avatar-u7617-s" width="48" height="48" loading="lazy" /> 
		</a>
				
			</div>
		</div>
	

	</div>

										
											

	
	



	<div class="structItem structItem--thread is-prefix12 thstafftracker-has-staff-post js-inlineModContainer js-threadListItem-104" data-author="Steve">

	
		<div class="structItem-cell structItem-cell--icon">
			<div class="structItem-iconContainer">
				<a href="/members/steve.1/" class="avatar avatar--s" data-user-id="1" data-xf-init="member-tooltip">
			<img src="/data/avatars/s/0/1.jpg?1600280256" srcset="/data/avatars/m/0/1.jpg?1600280256 2x" alt="Steve" class="avatar-u1-s" width="48" height="48" loading="lazy" /> 
		</a>
				
			</div>
		</div>
	

	
		<div class="structItem-cell structItem-cell--main" data-xf-init="touch-proxy">
			
				<ul class="structItem-statuses">
				
				
					
					
					
					
					

					
						
							<li>
								<i class="structItem-status structItem-status--sticky" aria-hidden="true" title="Sticky"></i>
								<span class="u-srOnly">Sticky</span>
							</li>
						
					

					
					
	<li>
		<i class="structItem-status structItem-status--staffPost"
		   aria-hidden="true" title="Contains 10 staff post(s)"></i>
		<span class="u-srOnly">
			Contains 10 staff post(s)
		</span>
	</li>



					
					
						
							
						
					
				
				
				</ul>
			
			<div class="structItem-title" uix-href="/threads/tracking-my-work-progress.104/">
				
				
					
						<a href="/forums/blog/?prefix_id[0]=12" class="labelLink" data-xf-init="tooltip" title="Add to filters"  rel="nofollow"><span class="label label--primary" dir="auto">FYI</span></a>
					
				
				<a href="/threads/tracking-my-work-progress.104/" class="" data-tp-primary="on" data-xf-init="preview-tooltip" data-preview-url="/threads/tracking-my-work-progress.104/preview">Tracking My Work &amp; Progress</a>
			</div>

			<div class="structItem-minor">
				

				
					<ul class="structItem-parts">

						<li><a href="/members/steve.1/" class="username " dir="auto" data-user-id="1" data-xf-init="member-tooltip"><span class="username--staff username--moderator username--admin">Steve</span></a></li>
						<li class="structItem-startDate"><a href="/threads/tracking-my-work-progress.104/" rel="nofollow"><time  class="u-dt" dir="auto" datetime="2020-10-04T13:57:26-0700" data-time="1601845046" data-date-string="Oct 4, 2020" data-time-string="1:57 PM" title="Oct 4, 2020 at 1:57 PM">Oct 4, 2020</time></a></li>
						
						
						
					
					
					</ul>
				
			</div>




		</div>
	

	
		<div class="structItem-cell structItem-cell--meta" title="First message reaction score: 28">
			<dl class="pairs pairs--justified">
				<dt>Replies</dt>
				<dd>9</dd>
			</dl>
			<dl class="pairs pairs--justified structItem-minor">
				<dt>Views</dt>
				<dd>27K</dd>
			</dl>
		</div>
	

	
		<div class="structItem-cell structItem-cell--latest ">
		
			
				
				<a href="/threads/tracking-my-work-progress.104/latest" rel="nofollow"><time  class="structItem-latestDate u-dt" dir="auto" datetime="2021-11-17T08:10:58-0800" data-time="1637165458" data-date-string="Nov 17, 2021" data-time-string="8:10 AM" title="Nov 17, 2021 at 8:10 AM">Nov 17, 2021</time></a>
				<div class="structItem-minor">
					
						<a href="/members/steve.1/" class="username " dir="auto" data-user-id="1" data-xf-init="member-tooltip"><span class="username--staff username--moderator username--admin">Steve</span></a>
					
				</div>
			
		</div>
	

	
		<div class="structItem-cell structItem-cell--icon structItem-cell--iconEnd">
			<div class="structItem-iconContainer">
				
					<a href="/members/steve.1/" class="avatar avatar--xxs" data-user-id="1" data-xf-init="member-tooltip">
			<img src="/data/avatars/s/0/1.jpg?1600280256"  alt="Steve" class="avatar-u1-s" width="48" height="48" loading="lazy" /> 
		</a>
				
			</div>
		</div>
	

	</div>

										
											

	
	



	<div class="structItem structItem--thread is-prefix12 thstafftracker-has-staff-post js-inlineModContainer js-threadListItem-163" data-author="Steve">

	
		<div class="structItem-cell structItem-cell--icon">
			<div class="structItem-iconContainer">
				<a href="/members/steve.1/" class="avatar avatar--s" data-user-id="1" data-xf-init="member-tooltip">
			<img src="/data/avatars/s/0/1.jpg?1600280256" srcset="/data/avatars/m/0/1.jpg?1600280256 2x" alt="Steve" class="avatar-u1-s" width="48" height="48" loading="lazy" /> 
		</a>
				
			</div>
		</div>
	

	
		<div class="structItem-cell structItem-cell--main" data-xf-init="touch-proxy">
			
				<ul class="structItem-statuses">
				
				
					
					
					
					
					

					
						
							<li>
								<i class="structItem-status structItem-status--sticky" aria-hidden="true" title="Sticky"></i>
								<span class="u-srOnly">Sticky</span>
							</li>
						
					

					
					
	<li>
		<i class="structItem-status structItem-status--staffPost"
		   aria-hidden="true" title="Contains 9 staff post(s)"></i>
		<span class="u-srOnly">
			Contains 9 staff post(s)
		</span>
	</li>



					
					
						
							
						
					
				
				
				</ul>
			
			<div class="structItem-title" uix-href="/threads/my-favorite-utilities-gadgets-services.163/">
				
				
					
						<a href="/forums/blog/?prefix_id[0]=12" class="labelLink" data-xf-init="tooltip" title="Add to filters"  rel="nofollow"><span class="label label--primary" dir="auto">FYI</span></a>
					
				
				<a href="/threads/my-favorite-utilities-gadgets-services.163/" class="" data-tp-primary="on" data-xf-init="preview-tooltip" data-preview-url="/threads/my-favorite-utilities-gadgets-services.163/preview">My Favorite Utilities, Gadgets &amp; Services</a>
			</div>

			<div class="structItem-minor">
				

				
					<ul class="structItem-parts">

						<li><a href="/members/steve.1/" class="username " dir="auto" data-user-id="1" data-xf-init="member-tooltip"><span class="username--staff username--moderator username--admin">Steve</span></a></li>
						<li class="structItem-startDate"><a href="/threads/my-favorite-utilities-gadgets-services.163/" rel="nofollow"><time  class="u-dt" dir="auto" datetime="2020-10-20T07:34:12-0700" data-time="1603204452" data-date-string="Oct 20, 2020" data-time-string="7:34 AM" title="Oct 20, 2020 at 7:34 AM">Oct 20, 2020</time></a></li>
						
						
						
					
					
					</ul>
				
			</div>




		</div>
	

	
		<div class="structItem-cell structItem-cell--meta" title="First message reaction score: 22">
			<dl class="pairs pairs--justified">
				<dt>Replies</dt>
				<dd>9</dd>
			</dl>
			<dl class="pairs pairs--justified structItem-minor">
				<dt>Views</dt>
				<dd>59K</dd>
			</dl>
		</div>
	

	
		<div class="structItem-cell structItem-cell--latest ">
		
			
				
				<a href="/threads/my-favorite-utilities-gadgets-services.163/latest" rel="nofollow"><time  class="structItem-latestDate u-dt" dir="auto" datetime="2021-06-28T11:45:03-0700" data-time="1624905903" data-date-string="Jun 28, 2021" data-time-string="11:45 AM" title="Jun 28, 2021 at 11:45 AM">Jun 28, 2021</time></a>
				<div class="structItem-minor">
					
						<a href="/members/steve.1/" class="username " dir="auto" data-user-id="1" data-xf-init="member-tooltip"><span class="username--staff username--moderator username--admin">Steve</span></a>
					
				</div>
			
		</div>
	

	
		<div class="structItem-cell structItem-cell--icon structItem-cell--iconEnd">
			<div class="structItem-iconContainer">
				
					<a href="/members/steve.1/" class="avatar avatar--xxs" data-user-id="1" data-xf-init="member-tooltip">
			<img src="/data/avatars/s/0/1.jpg?1600280256"  alt="Steve" class="avatar-u1-s" width="48" height="48" loading="lazy" /> 
		</a>
				
			</div>
		</div>
	

	</div>

										
									</div>
								</div>
							</div>

							
						

						
							<h3 class="block-minorHeader uix_threadListSeparator">Normal threads</h3>
						

						<div class="structItemContainer-group js-threadList">
							
								
									

	
	



	<div class="structItem structItem--thread thstafftracker-has-staff-post js-inlineModContainer js-threadListItem-1056" data-author="Steve">

	
		<div class="structItem-cell structItem-cell--icon">
			<div class="structItem-iconContainer">
				<a href="/members/steve.1/" class="avatar avatar--s" data-user-id="1" data-xf-init="member-tooltip">
			<img src="/data/avatars/s/0/1.jpg?1600280256" srcset="/data/avatars/m/0/1.jpg?1600280256 2x" alt="Steve" class="avatar-u1-s" width="48" height="48" loading="lazy" /> 
		</a>
				
			</div>
		</div>
	

	
		<div class="structItem-cell structItem-cell--main" data-xf-init="touch-proxy">
			
				<ul class="structItem-statuses">
				
				
					
					
					
					
					
						<li>
							<i class="structItem-status structItem-status--locked" aria-hidden="true" title="Locked"></i>
							<span class="u-srOnly">Locked</span>
						</li>
					

					
						
					

					
					
	<li>
		<i class="structItem-status structItem-status--staffPost"
		   aria-hidden="true" title="Contains 1 staff post(s)"></i>
		<span class="u-srOnly">
			Contains 1 staff post(s)
		</span>
	</li>



					
					
						
							
						
					
				
				
				</ul>
			
			<div class="structItem-title" uix-href="/threads/the-silver-ships-by-scott-jucha.1056/">
				
				
				<a href="/threads/the-silver-ships-by-scott-jucha.1056/" class="" data-tp-primary="on" data-xf-init="preview-tooltip" data-preview-url="/threads/the-silver-ships-by-scott-jucha.1056/preview">The Silver Ships by Scott Jucha</a>
			</div>

			<div class="structItem-minor">
				

				
					<ul class="structItem-parts">

						<li><a href="/members/steve.1/" class="username " dir="auto" data-user-id="1" data-xf-init="member-tooltip"><span class="username--staff username--moderator username--admin">Steve</span></a></li>
						<li class="structItem-startDate"><a href="/threads/the-silver-ships-by-scott-jucha.1056/" rel="nofollow"><time  class="u-dt" dir="auto" datetime="2022-09-06T12:31:29-0700" data-time="1662492689" data-date-string="Sep 6, 2022" data-time-string="12:31 PM" title="Sep 6, 2022 at 12:31 PM">Sep 6, 2022</time></a></li>
						
						
						
					
					
					</ul>
				
			</div>




		</div>
	

	
		<div class="structItem-cell structItem-cell--meta" title="First message reaction score: 2">
			<dl class="pairs pairs--justified">
				<dt>Replies</dt>
				<dd>4</dd>
			</dl>
			<dl class="pairs pairs--justified structItem-minor">
				<dt>Views</dt>
				<dd>23K</dd>
			</dl>
		</div>
	

	
		<div class="structItem-cell structItem-cell--latest ">
		
			
				
				<a href="/threads/the-silver-ships-by-scott-jucha.1056/latest" rel="nofollow"><time  class="structItem-latestDate u-dt" dir="auto" datetime="2022-09-21T17:32:35-0700" data-time="1663806755" data-date-string="Sep 21, 2022" data-time-string="5:32 PM" title="Sep 21, 2022 at 5:32 PM">Sep 21, 2022</time></a>
				<div class="structItem-minor">
					
						<a href="/members/rfrazier.1964/" class="username " dir="auto" data-user-id="1964" data-xf-init="member-tooltip">rfrazier</a>
					
				</div>
			
		</div>
	

	
		<div class="structItem-cell structItem-cell--icon structItem-cell--iconEnd">
			<div class="structItem-iconContainer">
				
					<a href="/members/rfrazier.1964/" class="avatar avatar--xxs" data-user-id="1964" data-xf-init="member-tooltip">
			<img src="/data/avatars/s/1/1964.jpg?1601929236"  alt="rfrazier" class="avatar-u1964-s" width="48" height="48" loading="lazy" /> 
		</a>
				
			</div>
		</div>
	

	</div>

								
								
							
						</div>
					
				</div>
			
		</div>
	</div>

	<div class="block-outer block-outer--after">
		
		
		
			<div class="block-outer-opposite">
				
					<a href="/login/" class="button--link button--wrap button" data-xf-click="overlay"><span class="button-text">
						You must log in or register to post here.
					</span></a>
				
			</div>
		
	</div>
</div>









										
	

									</div>
									<!-- BELOW MAIN CONTENT -->
									
									
	

								</div>

								
	
		
	

	

							</div>
							
	

						</div>
						
	
		
	
		
		
	

		
	

	

						
	

					</div>
				</div>

				
	
		
	<footer class="p-footer" id="footer">

		

		<div class="p-footer-inner">
			<div class="pageContent">
				<div class="p-footer-row">
					
						<div class="p-footer-row-main">
							<ul class="p-footer-linkList p-footer-choosers">
								
									
									
										<li><a id="uix_widthToggle--trigger" data-xf-init="tooltip" title="Toggle width" rel="nofollow"><i class="fa--xf far fa-compress-alt" aria-hidden="true"></i></a></li>
									
									
										<li><a href="/misc/style" data-xf-click="overlay" data-xf-init="tooltip" title="Style chooser" rel="nofollow">Light</a></li>
									
									
								
							</ul>
						</div>
					
				</div>
				<div class="p-footer-row-opposite">
					<ul class="p-footer-linkList">
					<li><a href="/pages/contentpolicy">Content Policy</a></li>
						
							
								<li><a href="/misc/contact" data-xf-click="overlay">Contact us</a></li>
							
						

						
							<li><a href="/help/terms/">Terms and rules</a></li>
						

						
							<li><a href="/help/privacy-policy/">Privacy policy</a></li>
						

						
							<li><a href="/help/">Help</a></li>
						

						

						<li><a href="#top" title="Top" data-xf-click="scroll-to"><i class="fa fa-arrow-up" aria-hidden="true"></i></a></li>

						<li><a href="/forums/-/index.rss" target="_blank" class="p-footer-rssLink" title="RSS"><span aria-hidden="true"><i class="fa fa-rss"></i><span class="u-srOnly">RSS</span></span></a></li>
					</ul>
				</div>
			</div>
		</div>

		<div class="p-footer-copyrightRow">
			<div class="pageContent">
				<div class="uix_copyrightBlock">
					

					
				</div>
				
	
		
	


	

			</div>
		</div>
	</footer>

	

				
				
					<div class="uix_fabBar uix_fabBar--active">
						
							
								<div class="u-scrollButtons js-scrollButtons" data-trigger-type="both">
									<a href="#top" class="button--scroll ripple-JsOnly button" data-xf-click="scroll-to"><span class="button-text"><i class="fa--xf far fa-arrow-up" aria-hidden="true"></i><span class="u-srOnly">Top</span></span></a>
									
										<a href="#footer" class="button--scroll ripple-JsOnly button" data-xf-click="scroll-to"><span class="button-text"><i class="fa--xf far fa-arrow-down" aria-hidden="true"></i><span class="u-srOnly">Bottom</span></span></a>
									
									<div class="u-navButtons js-navButtons" data-trigger-type="both">
										<a href="javascript:" class="button--scroll ripple-JsOnly button"><span class="button-text"><i class="fa--xf far fa-arrow-left" aria-hidden="true"></i><span class="u-srOnly">Back</span></span></a>
									</div>
								</div>
							
							
								
							
						
					</div>
				
				
				
			</div>
		</div>
		
		<div class="u-bottomFixer js-bottomFixTarget">
			
			
		</div>

		<script>
	if (typeof (window.themehouse) !== 'object') {
		window.themehouse = {};
	}
	if (typeof (window.themehouse.settings) !== 'object') {
		window.themehouse.settings = {};
	}
	window.themehouse.settings = {
		common: {
			'20210125': {
				init: false,
			},
		},
		data: {
			version: '2.2.15.0.2',
			jsVersion: 'No JS Files',
			templateVersion: '2.1.8.0_Release',
			betaMode: 0,
			theme: '',
			url: 'https://forums.grc.com/',
			user: '0',
		},
		inputSync: {},
		minimalSearch: {
			breakpoint: "900px",
			dropdownBreakpoint: "900",
		},
		sidebar: {
            enabled: '1',
			link: '/uix/toggle-sidebar.json?t=1776574096%2C03e744a9629690e7a9e76880837848e5',
            state: '',
		},
        sidebarNav: {
            enabled: '',
			link: '/uix/toggle-sidebar-navigation.json?t=1776574096%2C03e744a9629690e7a9e76880837848e5',
            state: '',
		},
		fab: {
			enabled: 1,
		},
		checkRadius: {
			enabled: 0,
			selectors: '.p-footer-inner, .uix_extendedFooter, .p-nav, .p-sectionLinks, .p-staffBar, .p-header, #wpadminbar',
		},
		nodes: {
			enabled: 0,
		},
        nodesCollapse: {
            enabled: '1',
			link: '/uix/toggle-category.json?t=1776574096%2C03e744a9629690e7a9e76880837848e5',
			state: '',
        },
		widthToggle: {
			enabled: '1',
			link: '/uix/toggle-width.json?t=1776574096%2C03e744a9629690e7a9e76880837848e5',
			state: 'fixed',
		},
	}

	window.document.addEventListener('DOMContentLoaded', function() {
		
			try {
			   window.themehouse.common['20210125'].init();
			   window.themehouse.common['20180112'] = window.themehouse.common['20210125']; // custom projects fallback
			} catch(e) {
			   console.log('Error caught', e);
			}
		


		var jsVersionPrefix = 'No JS Files';
		if (typeof(window.themehouse.settings.data.jsVersion) === 'string') {
			var jsVersionSplit = window.themehouse.settings.data.jsVersion.split('_');
			if (jsVersionSplit.length) {
				jsVersionPrefix = jsVersionSplit[0];
			}
		}
		var templateVersionPrefix = 'No JS Template Version';
		if (typeof(window.themehouse.settings.data.templateVersion) === 'string') {
			var templateVersionSplit = window.themehouse.settings.data.templateVersion.split('_');
			if (templateVersionSplit.length) {
				templateVersionPrefix = templateVersionSplit[0];
			}
		}
		if (jsVersionPrefix !== templateVersionPrefix) {
			var splitFileVersion = jsVersionPrefix.split('.');
			var splitTemplateVersion = templateVersionPrefix.split('.');
			console.log('version mismatch', jsVersionPrefix, templateVersionPrefix);
		}

	});
</script>

		
	<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script><script>window.jQuery || document.write('<script src="/js/vendor/jquery/jquery-3.5.1.min.js?_v=24d2ea07"><\/script>')</script>
	<script src="/js/vendor/vendor-compiled.js?_v=24d2ea07"></script>
	<script src="/js/xf/core-compiled.js?_v=24d2ea07"></script>
	<script src="/js/sv/alerts/alerts.min.js?_v=24d2ea07"></script>
<script src="/js/xf/notice.min.js?_v=24d2ea07"></script>
<script src="/js/sv/ese/xf/structure.min.js?_v=24d2ea07"></script>
<script src="/js/themehouse/uix/ripple.min.js?_v=24d2ea07"></script>
<script src="/js/themehouse/global/20210125.min.js?_v=24d2ea07"></script>
<script src="/js/themehouse/uix/index.min.js?_v=24d2ea07"></script>
<script src="/js/themehouse/uix/vendor/hover-intent/jquery.hoverIntent.min.js?_v=24d2ea07"></script>
<script>


// create a IIFE (Immediately Invoked Function Expression) scope
((window, document) =>
{
	var pathname = window.location.href;
	pathname = pathname.split('?')[0];
	var n = pathname.charAt(pathname.length-1);
	
	if (n != '/')
	{
		var url = pathname + '/quicksearch';
	}
	else
	{
		var url = pathname + 'quicksearch' ;
	}

    // get quickSearchTitle
    const quickSearchTitle = document.getElementById('quickSearchTitle')

    // enables the HTML element
    quickSearchTitle.disabled = false

    // attach an event listener to the keyup event
    XF.on(
        quickSearchTitle,
        'keyup',
        delay(
            () =>
            {
                // get title
                const title = quickSearchTitle.value

                // check condition
                if (title.length > 0)
                {
                    // make asynchronous AJAX request
                    XF.ajax('POST', url, { title }, ({ html }) =>
                    {
                        // allows inserting HTML into the page without reloading it
                        XF.setupHtmlInsert(html, (html) =>
                        {
                            // get result
                            const result = document.getElementById('quicksearch-result')

                            // get div based on window width
                            const wrapper = html.querySelector(
                                window.innerWidth >= 600
                                    ? '.quicksearch-wrapper-wide'
                                    : '.quicksearch-wrapper-narrow'
                            )

                            // replace contents of the element with the entire HTML structure
                            result.innerHTML = wrapper.outerHTML

                            // slide down
                            XF.Animate.slideDown(result, XF.config.speed.slow)
                        })
                    })
                }

                // check condition
                if (title.length === 0)
                {
                    // get result
                    const result = document.getElementById('quicksearch-result')

                    // slide up
                    XF.Animate.slideUp(result, XF.config.speed.slow)
                }
            },
            // escape options variable
            250
        )
    )

    function delay(callback, ms = 0)
    {
        // create timer object
        let timer

        // use variadic arrow function to allow variable number of arguments
        return (...args) =>
        {
            clearTimeout(timer)
            timer = setTimeout(
                () =>
                {
                    callback.apply(this, args)
                },
                ms
            )
        }
    }	
})(window, document)


</script>
<script>

	// detect android device. Added to fix the dark pixel bug https://github.com/Audentio/xf2theme-issues/issues/1055

	document.addEventListener('DOMContentLoaded', function () {
	var ua = navigator.userAgent.toLowerCase();
	var isAndroid = ua.indexOf("android") > -1; //&& ua.indexOf("mobile");

	if(isAndroid) {
	document.querySelector("html").classList.add("device--isAndroid");
	}	
	}, false);

</script>
<script>

		document.addEventListener('DOMContentLoaded', function () {
			var sidebar = document.querySelector('.p-body-sidebar');
			var backdrop = document.querySelector('.p-body-sidebar [data-ocm-class="offCanvasMenu-backdrop"]');
		
			var hasSidebar = document.querySelector('.p-body-sidebar') !== null;
			var hasBackdrop = document.querySelector('.p-body-sidebar [data-ocm-class="offCanvasMenu-backdrop"]') !== null;
			var sidebarTrigger = document.querySelector('.uix_sidebarCanvasTrigger') !== null;
			var sidebarInner = document.querySelector('.uix_sidebarCanvasTrigger') !== null;
			
			if (sidebarTrigger) {
				document.querySelector('.uix_sidebarCanvasTrigger').addEventListener("click", (e) => {
					e.preventDefault();

					sidebar.style.display = "block";;
					window.setTimeout(function() {
						sidebar.classList.add('offCanvasMenu');
						sidebar.classList.add('offCanvasMenu--blocks');
						sidebar.classList.add('is-active');
						sidebar.classList.add('is-transitioning');
						document.querySelector('body').classList.add('sideNav--open');
					}, 50);
		
					if (hasSidebar) {
						window.setTimeout(function() {
							sidebar.classList.remove('is-transitioning');
						}, 250);
					}
		
					if (sidebarInner) {
						document.querySelector('.uix_sidebarInner').classList.add('offCanvasMenu-content');
						backdrop.classList.add('offCanvasMenu-backdrop');
						document.querySelector('body').classList.add('is-modalOpen');
					}
				})
			}
			if (hasBackdrop) {
				backdrop.addEventListener("click", (e) => {
					sidebar.classList.add('is-transitioning');
					sidebar.classList.remove('is-active');

					window.setTimeout(function() {
						sidebar.classList.remove('offCanvasMenu');
						sidebar.classList.remove('offCanvasMenu--blocks');
						sidebar.classList.remove('is-transitioning');
						document.querySelector('.uix_sidebarInner').classList.remove('offCanvasMenu-content');
						backdrop.classList.remove('offCanvasMenu-backdrop');
						document.querySelector('body').classList.remove('is-modalOpen');
						sidebar.style.display="";
					}, 250);
				});
			}
		}, false);
	
</script>
<script>

	/****** OFF CANVAS ******/
document.addEventListener("DOMContentLoaded", function () {
    var panels = {
        navigation: {
            position: 1,
        },
        account: {
            position: 2,
        },
        inbox: {
            position: 3,
        },
        alerts: {
            position: 4,
        },
    };

    var tabsContainer = document.querySelector(".sidePanel__tabs");

    var activeTab = "navigation";

    var activeTabPosition = panels[activeTab].position;

    function generateDirections() {
        var tabPanels = document.querySelectorAll(".sidePanel__tabPanel");
        tabPanels.forEach(function (tabPanel) {
            var tabPosition = tabPanel.getAttribute("data-content");
            var activeTabPosition = panels[activeTab].position;

            if (tabPosition != activeTab) {
                if (panels[tabPosition].position < activeTabPosition) {
                    tabPanel.classList.add("is-left");
                }

                if (panels[tabPosition].position > activeTabPosition) {
                    tabPanel.classList.add("is-right");
                }
            }
        });
    }

    generateDirections();

	if (tabsContainer) {
		var sidePanelTabs = tabsContainer.querySelectorAll(".sidePanel__tab");
	}
	
	if (sidePanelTabs && sidePanelTabs.length > 0) {
		sidePanelTabs.forEach(function (tab) {
			tab.addEventListener("click", function () {
				sidePanelTabs.forEach(function (tab) {
					tab.classList.remove("sidePanel__tab--active");
				});
				this.classList.add("sidePanel__tab--active");

				activeTab = this.getAttribute("data-attr");

				var tabPanels = document.querySelectorAll(".sidePanel__tabPanel");
				tabPanels.forEach(function (tabPanel) {
					tabPanel.classList.remove("is-active");
				});

				var activeTabPanel = document.querySelector(
					'.sidePanel__tabPanel[data-content="' + activeTab + '"]'
				);
				activeTabPanel.classList.add("is-active");

				var tabPanels = document.querySelectorAll(".sidePanel__tabPanel");
				tabPanels.forEach(function (tabPanel) {
					tabPanel.classList.remove("is-left", "is-right");
				});

				generateDirections();
			});
		});
	}
});


	/******** extra info post toggle ***********/
	$(document).ready(function() {
	XF.thThreadsUserExtraTrigger = XF.Click.newHandler({
	eventNameSpace: 'XFthThreadsUserExtraTrigger',

	init: function(e) {},

	click: function(e)
	{
	var parent =  this.$target.parents('.message-user');
	var triggerContainer = this.$target.parent('.thThreads__userExtra--toggle');
	var container = triggerContainer.siblings('.thThreads__message-userExtras');
	var child = container.find('.message-userExtras');
	var eleHeight = child.height();
	if (parent.hasClass('userExtra--expand')) {
	container.css({ height: eleHeight });
	parent.toggleClass('userExtra--expand');
	window.setTimeout(function() {
	container.css({ height: '0' });
	window.setTimeout(function() {
	container.css({ height: '' });
	}, 200);
	}, 17);

	} else {
	container.css({ height: eleHeight });
	window.setTimeout(function() {
	parent.toggleClass('userExtra--expand');
	container.css({ height: '' });
	}, 200);
	}
	}
	});

	XF.Click.register('ththreads-userextra-trigger', 'XF.thThreadsUserExtraTrigger');
	});

	

	/******** Backstretch images ***********/

	$(document).ready(function() {
	if ( 0 ) {

	$("body").addClass('uix__hasBackstretch');

	$("body").backstretch([
	"/styles/uix/images/bg/1.jpg","/styles/uix/images/bg/2.jpg","/styles/uix/images/bg/3.jpg"
	], {
	duration: 4000,
	fade: 500
	});

	$("body").css("zIndex","");
	}
	});

	// sidenav canvas blur fix

document.addEventListener('DOMContentLoaded', function () {
    document.querySelectorAll('.p-body-sideNavTrigger .button').forEach(function (button) {
        button.addEventListener('click', function () {
            document.body.classList.add('sideNav--open');
        });
    });

    document.querySelectorAll("[data-ocm-class='offCanvasMenu-backdrop']").forEach(function (backdrop) {
        backdrop.addEventListener('click', function () {
            document.body.classList.remove('sideNav--open');
        });
    });

    document.addEventListener('editor:start', function (event) {
        if (typeof event !== 'undefined' && typeof event.target !== 'undefined') {
            var ele = event.target;
            if (ele.classList.contains('js-editor')) {
                var wrapper = ele.closest('.message-editorWrapper');
                if (wrapper) {
                    setTimeout(function () {
                        var innerEle = wrapper.querySelector('.fr-element');
                        if (innerEle) {
                            innerEle.addEventListener('focus', function (e) {
                                document.documentElement.classList.add('uix_editor--focused');
                            });
                            innerEle.addEventListener('blur', function (e) {
                                document.documentElement.classList.remove('uix_editor--focused');
                            });
                        }
                    }, 0);
                }
            }
        }
    });
});

	// off canvas menu closer keyboard shortcut
document.addEventListener('DOMContentLoaded', function () {
    document.body.addEventListener('keyup', function (e) {
        switch (e.key) {
            case 'Escape':
                var offCanvasMenu = document.querySelector('.offCanvasMenu.is-active');
                if (offCanvasMenu) {
                    var backdrop = offCanvasMenu.querySelector('.offCanvasMenu-backdrop');
                    if (backdrop) {
                        backdrop.click();
                    }
                }
                return;
        }
    });
});
	
</script>
<script>

document.addEventListener('DOMContentLoaded', function () {
    let uixMegaHovered = false;
    const navEls = document.querySelectorAll('.uix-navEl--hasMegaMenu');
    const pNav = document.querySelector('.p-nav');
    let menu;

    function handleMouseOver() {
        if (uixMegaHovered) {
            menu = this.getAttribute('data-nav-id');
            pNav.classList.add('uix_showMegaMenu');

            document.querySelectorAll('.uix_megaMenu__content').forEach(function (content) {
                content.classList.remove('uix_megaMenu__content--active');
            });

            document
                .querySelector('.uix_megaMenu__content--' + menu)
                .classList.add('uix_megaMenu__content--active');
        }
    }

    function handleMouseEnter() {
        uixMegaHovered = true;
    }

    function handleMouseLeave() {
        pNav.classList.remove('uix_showMegaMenu');
        uixMegaHovered = false;
    }

    navEls.forEach(function (navEl) {
        navEl.addEventListener('mouseover', handleMouseOver);
    });

    pNav.addEventListener('mouseenter', handleMouseEnter);
    pNav.addEventListener('mouseleave', handleMouseLeave);
});
	
</script>
<script>

/******** signature collapse toggle ***********/
window.addEventListener('load', function() {
  setTimeout(function() {
    var maxHeight = 100;

    var signatures = document.querySelectorAll('.message-signature');

    signatures.forEach(function(signature) {
      var wrapper = signature.querySelector('.bbWrapper');
      if (wrapper) {
        var height = wrapper.clientHeight;
        if (height > maxHeight) {
          signature.classList.add('message-signature--expandable');
        }
      }
    });

    /*** expand function ***/
    function expand(container, canClose) {
      var inner = container.querySelector('.bbWrapper');
      var eleHeight = inner ? inner.clientHeight : 0;
      var isExpanded = container.classList.contains('message-signature--expanded');

      if (isExpanded) {
        if (canClose) {
          container.style.height = eleHeight + 'px';
          container.classList.remove('message-signature--expanded');
          setTimeout(function() {
            container.style.height = maxHeight + 'px';
            setTimeout(function() {
              container.style.height = '';
            }, 200);
          }, 17);
        }
      } else {
        container.style.height = eleHeight + 'px';
        setTimeout(function() {
          container.classList.add('message-signature--expanded');
          container.style.height = '';
        }, 200);
      }
    }

    var hash = window.location.hash;
    if (hash && hash.indexOf('#') === 0) {
      var replacedHash = hash.replace('#', '');
      var ele = document.getElementById(replacedHash);
      if (ele) {
        ele.scrollIntoView();
      }
    }

    /*** handle hover ***/
    

    /*** handle click ***/
    var signatureExpandButtons = document.querySelectorAll('.uix_signatureExpand');

    signatureExpandButtons.forEach(function(button) {
      button.addEventListener('click', function() {
        var container = button.closest('.message-signature');
        expand(container, true);
      });
    });
  }, 0);
});
		
</script>
<script>

		$(document).ready(function() {
		setTimeout(function () { 
		var editor = XF.getEditorInContainer($(document));
		if (!!editor && !!editor.ed) {
		editor.ed.events.on('focus', function() { 
		$('.uix_fabBar').css('display', 'none');
		})
		editor.ed.events.on('blur', function() { 
		$('.uix_fabBar').css('display', '');
		})
		}
		}, 100)		
		})
	
</script>
<script>

		$(document).on('ajax:complete', function(e, xhr, status)
		{
		var data = xhr.responseJSON;
		if (!data)
		{
		return;
		}
		if (data.visitor)
		{
		$('.js-uix_badge--totalUnread').data('badge', data.visitor.total_unread);
		}
		});
	
</script>

	
	

	


<script src="/js/themehouse/uix/defer.min.js?_v=24d2ea07" defer></script>


	
<script src="/js/themehouse/uix/deferFab.min.js?_v=24d2ea07" defer></script>


	
<script src="/js/themehouse/uix/deferNodesCollapse.min.js?_v=24d2ea07" defer></script>


	
<script src="/js/themehouse/uix/deferWidthToggle.min.js?_v=24d2ea07" defer></script>







	




	

	

	
		
	



	

	

	

	
	
	
	
	<script>
		jQuery.extend(true, XF.config, {
			// 
			userId: 0,
			enablePush: false,
			pushAppServerKey: '',
			url: {
				fullBase: 'https://forums.grc.com/',
				basePath: '/',
				css: '/css.php?css=__SENTINEL__&s=3&l=1&d=1765985776',
				keepAlive: '/login/keep-alive'
			},
			cookie: {
				path: '/',
				domain: '',
				prefix: 'grc_',
				secure: true,
				consentMode: 'disabled',
				consented: ["optional","_third_party"]
			},
			cacheKey: '0c62b17ad8228a04e6b12b91f0a4a548',
			csrf: '1776574096,03e744a9629690e7a9e76880837848e5',
			js: {"\/js\/sv\/alerts\/alerts.min.js?_v=24d2ea07":true,"\/js\/xf\/notice.min.js?_v=24d2ea07":true,"\/js\/sv\/ese\/xf\/structure.min.js?_v=24d2ea07":true,"\/js\/themehouse\/uix\/ripple.min.js?_v=24d2ea07":true,"\/js\/themehouse\/global\/20210125.min.js?_v=24d2ea07":true,"\/js\/themehouse\/uix\/index.min.js?_v=24d2ea07":true,"\/js\/themehouse\/uix\/vendor\/hover-intent\/jquery.hoverIntent.min.js?_v=24d2ea07":true},
			css: {"public:andy_quicksearch.less":true,"public:notices.less":true,"public:structured_list.less":true,"public:svAlertImprovements.less":true,"public:svESE_autocomplete.less":true,"public:uix.less":true,"public:uix_socialMedia.less":true,"public:extra.less":true},
			time: {
				now: 1776574096,
				today: 1776495600,
				todayDow: 6,
				tomorrow: 1776582000,
				yesterday: 1776409200,
				week: 1775977200
			},
			borderSizeFeature: '2px',
			fontAwesomeWeight: 'r',
			enableRtnProtect: true,
			
			enableFormSubmitSticky: true,
			uploadMaxFilesize: 268435456,
			allowedVideoExtensions: ["m4v","mov","mp4","mp4v","mpeg","mpg","ogv","webm"],
			allowedAudioExtensions: ["mp3","opus","ogg","wav"],
			shortcodeToEmoji: true,
			visitorCounts: {
				conversations_unread: '0',
				alerts_unviewed: '0',
				total_unread: '0',
				title_count: true,
				icon_indicator: true
			},
			jsState: {},
			publicMetadataLogoUrl: '',
			publicPushBadgeUrl: 'https://forums.grc.com/styles/default/xenforo/bell.png'
		});

		jQuery.extend(XF.phrases, {
			// 
"svStandardLib_time.day": "{count} day",
"svStandardLib_time.days": "{count} days",
"svStandardLib_time.hour": "{count} hour",
"svStandardLib_time.hours": "{count} hours",
"svStandardLib_time.minute": "{count} minutes",
"svStandardLib_time.minutes": "{count} minutes",
"svStandardLib_time.month": "{count} month",
"svStandardLib_time.months": "{count} months",
"svStandardLib_time.second": "{count} second",
"svStandardLib_time.seconds": "{count} seconds",
"svStandardLib_time.week": "time.week",
"svStandardLib_time.weeks": "{count} weeks",
"svStandardLib_time.year": "{count} year",
"svStandardLib_time.years": "{count} years",
			date_x_at_time_y: "{date} at {time}",
			day_x_at_time_y:  "{day} at {time}",
			yesterday_at_x:   "Yesterday at {time}",
			x_minutes_ago:    "{minutes} minutes ago",
			one_minute_ago:   "1 minute ago",
			a_moment_ago:     "A moment ago",
			today_at_x:       "Today at {time}",
			in_a_moment:      "In a moment",
			in_a_minute:      "In a minute",
			in_x_minutes:     "In {minutes} minutes",
			later_today_at_x: "Later today at {time}",
			tomorrow_at_x:    "Tomorrow at {time}",

			day0: "Sunday",
			day1: "Monday",
			day2: "Tuesday",
			day3: "Wednesday",
			day4: "Thursday",
			day5: "Friday",
			day6: "Saturday",

			dayShort0: "Sun",
			dayShort1: "Mon",
			dayShort2: "Tue",
			dayShort3: "Wed",
			dayShort4: "Thu",
			dayShort5: "Fri",
			dayShort6: "Sat",

			month0: "January",
			month1: "February",
			month2: "March",
			month3: "April",
			month4: "May",
			month5: "June",
			month6: "July",
			month7: "August",
			month8: "September",
			month9: "October",
			month10: "November",
			month11: "December",

			active_user_changed_reload_page: "The active user has changed. Reload the page for the latest version.",
			server_did_not_respond_in_time_try_again: "The server did not respond in time. Please try again.",
			oops_we_ran_into_some_problems: "Oops! We ran into some problems.",
			oops_we_ran_into_some_problems_more_details_console: "Oops! We ran into some problems. Please try again later. More error details may be in the browser console.",
			file_too_large_to_upload: "The file is too large to be uploaded.",
			uploaded_file_is_too_large_for_server_to_process: "The uploaded file is too large for the server to process.",
			files_being_uploaded_are_you_sure: "Files are still being uploaded. Are you sure you want to submit this form?",
			attach: "Attach files",
			rich_text_box: "Rich text box",
			close: "Close",
			link_copied_to_clipboard: "Link copied to clipboard.",
			text_copied_to_clipboard: "Text copied to clipboard.",
			loading: "Loading…",
			you_have_exceeded_maximum_number_of_selectable_items: "You have exceeded the maximum number of selectable items.",

			processing: "Processing",
			'processing...': "Processing…",

			showing_x_of_y_items: "Showing {count} of {total} items",
			showing_all_items: "Showing all items",
			no_items_to_display: "No items to display",

			number_button_up: "Increase",
			number_button_down: "Decrease",

			push_enable_notification_title: "Push notifications enabled successfully at GRC Public Forums",
			push_enable_notification_body: "Thank you for enabling push notifications!",

			pull_down_to_refresh: "Pull down to refresh",
			release_to_refresh: "Release to refresh",
			refreshing: "Refreshing…"
		});
	</script>

	<form style="display:none" hidden="hidden">
		<input type="text" name="_xfClientLoadTime" value="" id="_xfClientLoadTime" title="_xfClientLoadTime" tabindex="-1" />
	</form>

	

		
		
			<script type="text/template" id="xfReactTooltipTemplate">
			<div class="tooltip-content-inner">
				<div class="reactTooltip">
					
						<a href="#" class="reaction reaction--1" data-reaction-id="1"><i aria-hidden="true"></i><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="reaction-sprite js-reaction" alt="Like" title="Like" data-xf-init="tooltip" data-extra-class="tooltip--basic tooltip--noninteractive" /></a>
				
						<a href="#" class="reaction reaction--2" data-reaction-id="2"><i aria-hidden="true"></i><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="reaction-sprite js-reaction" alt="Love" title="Love" data-xf-init="tooltip" data-extra-class="tooltip--basic tooltip--noninteractive" /></a>
				
						<a href="#" class="reaction reaction--3" data-reaction-id="3"><i aria-hidden="true"></i><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="reaction-sprite js-reaction" alt="Haha" title="Haha" data-xf-init="tooltip" data-extra-class="tooltip--basic tooltip--noninteractive" /></a>
				
						<a href="#" class="reaction reaction--4" data-reaction-id="4"><i aria-hidden="true"></i><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="reaction-sprite js-reaction" alt="Wow" title="Wow" data-xf-init="tooltip" data-extra-class="tooltip--basic tooltip--noninteractive" /></a>
				
						<a href="#" class="reaction reaction--5" data-reaction-id="5"><i aria-hidden="true"></i><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="reaction-sprite js-reaction" alt="Sad" title="Sad" data-xf-init="tooltip" data-extra-class="tooltip--basic tooltip--noninteractive" /></a>
				
						<a href="#" class="reaction reaction--6" data-reaction-id="6"><i aria-hidden="true"></i><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="reaction-sprite js-reaction" alt="Angry" title="Angry" data-xf-init="tooltip" data-extra-class="tooltip--basic tooltip--noninteractive" /></a>
				
						<a href="#" class="reaction reaction--8" data-reaction-id="8"><i aria-hidden="true"></i><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="reaction-sprite js-reaction" alt="Dislike" title="Dislike" data-xf-init="tooltip" data-extra-class="tooltip--basic tooltip--noninteractive" /></a>
				
						<a href="#" class="reaction reaction--7" data-reaction-id="7"><i aria-hidden="true"></i><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="reaction-sprite js-reaction" alt="Done!" title="Done!" data-xf-init="tooltip" data-extra-class="tooltip--basic tooltip--noninteractive" /></a>
				
				</div>
				</div>
			</script>
		

		

		

	</body>
</html>





