diff --git a/doc/sample_html/class_index.html b/doc/sample_html/class_index.html
new file mode 100644
index 000000000..a2ce83656
--- /dev/null
+++ b/doc/sample_html/class_index.html
@@ -0,0 +1,553 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+    <title>Cog coverage</title>
+    <link rel="icon" sizes="32x32" href="favicon_32.png">
+    <link rel="stylesheet" href="style.css" type="text/css">
+    <script src="coverage_html.js" defer></script>
+</head>
+<body class="indexfile">
+<header>
+    <div class="content">
+        <h1>Cog coverage:
+            <span class="pc_cov">37.34%</span>
+        </h1>
+        <aside id="help_panel_wrapper">
+            <input id="help_panel_state" type="checkbox">
+            <label for="help_panel_state">
+                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts">
+            </label>
+            <div id="help_panel">
+                <p class="legend">Shortcuts on this page</p>
+                <div class="keyhelp">
+                    <p>
+                        <kbd>f</kbd>
+                        <kbd>n</kbd>
+                        <kbd>s</kbd>
+                        <kbd>m</kbd>
+                        <kbd>x</kbd>
+                        <kbd>b</kbd>
+                        <kbd>p</kbd>
+                        <kbd>c</kbd>
+                        &nbsp; change column sorting
+                    </p>
+                    <p>
+                        <kbd>[</kbd>
+                        <kbd>]</kbd>
+                        &nbsp; prev/next file
+                    </p>
+                    <p>
+                        <kbd>?</kbd> &nbsp; show/hide this help
+                    </p>
+                </div>
+            </div>
+        </aside>
+        <form id="filter_container">
+            <input id="filter" type="text" value="" placeholder="filter...">
+            <div>
+                <input id="hide100" type="checkbox" >
+                <label for="hide100">hide covered</label>
+            </div>
+        </form>
+        <h2>
+                <a class="button" href="index.html">Files</a>
+                <a class="button" href="function_index.html">Functions</a>
+                <a class="button current">Classes</a>
+        </h2>
+        <p class="text">
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
+        </p>
+    </div>
+</header>
+<main id="index">
+    <table class="index" data-sortable>
+        <thead>
+            <tr class="tablehead" title="Click to sort">
+                <th class="name left" aria-sort="none" data-shortcut="f">File<span class="arrows"></span></th>
+                <th class="name left" aria-sort="none" data-default-sort-order="ascending" data-shortcut="n">class<span class="arrows"></span></th>
+                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="s">statements<span class="arrows"></span></th>
+                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="m">missing<span class="arrows"></span></th>
+                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="x">excluded<span class="arrows"></span></th>
+                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="b">branches<span class="arrows"></span></th>
+                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="p">partial<span class="arrows"></span></th>
+                <th class="right" aria-sort="none" data-shortcut="c">coverage<span class="arrows"></span></th>
+            </tr>
+        </thead>
+        <tbody>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80___init___py.html">cogapp/__init__.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80___init___py.html"><data value=''><span class='no-noun'>(no class)</span></data></a></td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="1 1">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80___main___py.html">cogapp/__main__.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80___main___py.html"><data value=''><span class='no-noun'>(no class)</span></data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t64">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t64"><data value='CogError'>CogError</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>2</td>
+                <td>0</td>
+                <td class="right" data-ratio="5 5">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t73">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t73"><data value='CogUsageError'>CogUsageError</data></a></td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 0">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t78">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t78"><data value='CogInternalError'>CogInternalError</data></a></td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 0">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t83">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t83"><data value='CogGeneratedError'>CogGeneratedError</data></a></td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 0">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t88">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t88"><data value='CogUserException'>CogUserException</data></a></td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 0">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t94">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t94"><data value='CogCheckFailed'>CogCheckFailed</data></a></td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 0">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t100">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t100"><data value='CogGenerator'>CogGenerator</data></a></td>
+                <td>58</td>
+                <td>6</td>
+                <td>0</td>
+                <td>30</td>
+                <td>4</td>
+                <td class="right" data-ratio="78 88">88.64%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t209">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t209"><data value='CogOptions'>CogOptions</data></a></td>
+                <td>80</td>
+                <td>58</td>
+                <td>1</td>
+                <td>44</td>
+                <td>0</td>
+                <td class="right" data-ratio="22 124">17.74%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t334">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t334"><data value='Cog'>Cog</data></a></td>
+                <td>256</td>
+                <td>155</td>
+                <td>0</td>
+                <td>124</td>
+                <td>22</td>
+                <td class="right" data-ratio="137 380">36.05%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html"><data value=''><span class='no-noun'>(no class)</span></data></a></td>
+                <td>71</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="71 71">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_makefiles_py.html">cogapp/makefiles.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_makefiles_py.html"><data value=''><span class='no-noun'>(no class)</span></data></a></td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="4 4">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t23">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t23"><data value='CogTestsInMemory'>CogTestsInMemory</data></a></td>
+                <td>73</td>
+                <td>0</td>
+                <td>0</td>
+                <td>2</td>
+                <td>0</td>
+                <td class="right" data-ratio="75 75">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t469">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t469"><data value='CogOptionsTests'>CogOptionsTests</data></a></td>
+                <td>31</td>
+                <td>31</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 31">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t516">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t516"><data value='FileStructureTests'>FileStructureTests</data></a></td>
+                <td>29</td>
+                <td>29</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 29">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t650">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t650"><data value='CogErrorTests'>CogErrorTests</data></a></td>
+                <td>11</td>
+                <td>11</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 11">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t693">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t693"><data value='CogGeneratorGetCodeTests'>CogGeneratorGetCodeTests</data></a></td>
+                <td>37</td>
+                <td>37</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 37">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t761">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t761"><data value='TestCaseWithTempDir'>TestCaseWithTempDir</data></a></td>
+                <td>19</td>
+                <td>19</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 19">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t798">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t798"><data value='ArgumentHandlingTests'>ArgumentHandlingTests</data></a></td>
+                <td>43</td>
+                <td>43</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 43">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t893">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t893"><data value='TestMain'>TestMain</data></a></td>
+                <td>27</td>
+                <td>27</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 27">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t975">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t975"><data value='TestFileHandling'>TestFileHandling</data></a></td>
+                <td>73</td>
+                <td>73</td>
+                <td>0</td>
+                <td>2</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 75">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1424">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1424"><data value='CogTestLineEndings'>CogTestLineEndings</data></a></td>
+                <td>12</td>
+                <td>12</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 12">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1466">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1466"><data value='CogTestCharacterEncoding'>CogTestCharacterEncoding</data></a></td>
+                <td>12</td>
+                <td>12</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 12">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1521">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1521"><data value='TestCaseWithImports'>TestCaseWithImports</data></a></td>
+                <td>6</td>
+                <td>6</td>
+                <td>0</td>
+                <td>4</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 10">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1542">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1542"><data value='CogIncludeTests'>CogIncludeTests</data></a></td>
+                <td>46</td>
+                <td>46</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 46">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1699">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1699"><data value='CogTestsInFiles'>CogTestsInFiles</data></a></td>
+                <td>122</td>
+                <td>122</td>
+                <td>2</td>
+                <td>8</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 130">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2092">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2092"><data value='CheckTests'>CheckTests</data></a></td>
+                <td>40</td>
+                <td>40</td>
+                <td>0</td>
+                <td>6</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 46">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2215">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2215"><data value='WritabilityTests'>WritabilityTests</data></a></td>
+                <td>19</td>
+                <td>19</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 19">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2279">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2279"><data value='ChecksumTests'>ChecksumTests</data></a></td>
+                <td>30</td>
+                <td>30</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 30">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2465">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2465"><data value='CustomMarkerTests'>CustomMarkerTests</data></a></td>
+                <td>12</td>
+                <td>12</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 12">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2547">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2547"><data value='BlakeTests'>BlakeTests</data></a></td>
+                <td>15</td>
+                <td>15</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 15">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2618">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2618"><data value='ErrorCallTests'>ErrorCallTests</data></a></td>
+                <td>12</td>
+                <td>12</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 12">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html"><data value=''><span class='no-noun'>(no class)</span></data></a></td>
+                <td>185</td>
+                <td>2</td>
+                <td>0</td>
+                <td>2</td>
+                <td>1</td>
+                <td class="right" data-ratio="184 187">98.40%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t13">cogapp/test_makefiles.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t13"><data value='SimpleTests'>SimpleTests</data></a></td>
+                <td>51</td>
+                <td>51</td>
+                <td>0</td>
+                <td>6</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 57">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html">cogapp/test_makefiles.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html"><data value=''><span class='no-noun'>(no class)</span></data></a></td>
+                <td>17</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="17 17">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t9">cogapp/test_whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t9"><data value='WhitePrefixTests'>WhitePrefixTests</data></a></td>
+                <td>17</td>
+                <td>17</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 17">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t40">cogapp/test_whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t40"><data value='ReindentBlockTests'>ReindentBlockTests</data></a></td>
+                <td>21</td>
+                <td>21</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 21">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t74">cogapp/test_whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t74"><data value='CommonPrefixTests'>CommonPrefixTests</data></a></td>
+                <td>12</td>
+                <td>12</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 12">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html">cogapp/test_whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html"><data value=''><span class='no-noun'>(no class)</span></data></a></td>
+                <td>18</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="18 18">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t19">cogapp/utils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t19"><data value='Redirectable'>Redirectable</data></a></td>
+                <td>8</td>
+                <td>3</td>
+                <td>0</td>
+                <td>4</td>
+                <td>2</td>
+                <td class="right" data-ratio="7 12">58.33%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t41">cogapp/utils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t41"><data value='NumberedFileReader'>NumberedFileReader</data></a></td>
+                <td>7</td>
+                <td>0</td>
+                <td>0</td>
+                <td>2</td>
+                <td>0</td>
+                <td class="right" data-ratio="9 9">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html">cogapp/utils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html"><data value=''><span class='no-noun'>(no class)</span></data></a></td>
+                <td>17</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="17 17">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_whiteutils_py.html">cogapp/whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_whiteutils_py.html"><data value=''><span class='no-noun'>(no class)</span></data></a></td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="4 4">100.00%</td>
+            </tr>
+        </tbody>
+        <tfoot>
+            <tr class="total">
+                <td class="name left">Total</td>
+                <td class="name left">&nbsp;</td>
+                <td>1502</td>
+                <td>924</td>
+                <td>3</td>
+                <td>236</td>
+                <td>29</td>
+                <td class="right" data-ratio="649 1738">37.34%</td>
+            </tr>
+        </tfoot>
+    </table>
+    <p id="no_rows">
+        No items found using the specified filter.
+    </p>
+</main>
+<footer>
+    <div class="content">
+        <p>
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
+        </p>
+    </div>
+    <aside class="hidden">
+        <a id="prevFileLink" class="nav" href=""></a>
+        <a id="nextFileLink" class="nav" href=""></a>
+        <button type="button" class="button_prev_file" data-shortcut="["></button>
+        <button type="button" class="button_next_file" data-shortcut="]"></button>
+        <button type="button" class="button_show_hide_help" data-shortcut="?"></button>
+    </aside>
+</footer>
+</body>
+</html>
diff --git a/doc/sample_html/coverage_html.js b/doc/sample_html/coverage_html.js
index 593488286..a28c1bef8 100644
--- a/doc/sample_html/coverage_html.js
+++ b/doc/sample_html/coverage_html.js
@@ -36,11 +36,12 @@ function on_click(sel, fn) {
 function getCellValue(row, column = 0) {
     const cell = row.cells[column]  // nosemgrep: eslint.detect-object-injection
     if (cell.childElementCount == 1) {
-        const child = cell.firstElementChild
-        if (child instanceof HTMLTimeElement && child.dateTime) {
-            return child.dateTime
-        } else if (child instanceof HTMLDataElement && child.value) {
-            return child.value
+        var child = cell.firstElementChild;
+        if (child.tagName === "A") {
+            child = child.firstElementChild;
+        }
+        if (child instanceof HTMLDataElement && child.value) {
+            return child.value;
         }
     }
     return cell.innerText || cell.textContent;
@@ -50,28 +51,37 @@ function rowComparator(rowA, rowB, column = 0) {
     let valueA = getCellValue(rowA, column);
     let valueB = getCellValue(rowB, column);
     if (!isNaN(valueA) && !isNaN(valueB)) {
-        return valueA - valueB
+        return valueA - valueB;
     }
     return valueA.localeCompare(valueB, undefined, {numeric: true});
 }
 
 function sortColumn(th) {
     // Get the current sorting direction of the selected header,
-    // clear state on other headers and then set the new sorting direction
+    // clear state on other headers and then set the new sorting direction.
     const currentSortOrder = th.getAttribute("aria-sort");
     [...th.parentElement.cells].forEach(header => header.setAttribute("aria-sort", "none"));
+    var direction;
     if (currentSortOrder === "none") {
-        th.setAttribute("aria-sort", th.dataset.defaultSortOrder || "ascending");
-    } else {
-        th.setAttribute("aria-sort", currentSortOrder === "ascending" ? "descending" : "ascending");
+        direction = th.dataset.defaultSortOrder || "ascending";
+    }
+    else if (currentSortOrder === "ascending") {
+        direction = "descending";
+    }
+    else {
+        direction = "ascending";
     }
+    th.setAttribute("aria-sort", direction);
 
     const column = [...th.parentElement.cells].indexOf(th)
 
-    // Sort all rows and afterwards append them in order to move them in the DOM
+    // Sort all rows and afterwards append them in order to move them in the DOM.
     Array.from(th.closest("table").querySelectorAll("tbody tr"))
-        .sort((rowA, rowB) => rowComparator(rowA, rowB, column) * (th.getAttribute("aria-sort") === "ascending" ? 1 : -1))
-        .forEach(tr => tr.parentElement.appendChild(tr) );
+        .sort((rowA, rowB) => rowComparator(rowA, rowB, column) * (direction === "ascending" ? 1 : -1))
+        .forEach(tr => tr.parentElement.appendChild(tr));
+
+    // Save the sort order for next time.
+    localStorage.setItem(coverage.INDEX_SORT_STORAGE, JSON.stringify({column, direction}));
 }
 
 // Find all the elements with data-shortcut attribute, and use them to assign a shortcut key.
@@ -96,15 +106,40 @@ coverage.wire_up_filter = function () {
     const no_rows = document.getElementById("no_rows");
 
     // Observe filter keyevents.
-    document.getElementById("filter").addEventListener("input", debounce(event => {
+    const filter_handler = (event => {
         // Keep running total of each metric, first index contains number of shown rows
         const totals = new Array(table.rows[0].cells.length).fill(0);
         // Accumulate the percentage as fraction
         totals[totals.length - 1] = { "numer": 0, "denom": 0 };  // nosemgrep: eslint.detect-object-injection
 
+        var text = document.getElementById("filter").value;
+        const casefold = (text === text.toLowerCase());
+        const hide100 = document.getElementById("hide100").checked;
+
         // Hide / show elements.
         table_body_rows.forEach(row => {
-            if (!row.cells[0].textContent.includes(event.target.value)) {
+            var show = false;
+            // Check the text filter.
+            for (let column = 0; column < totals.length; column++) {
+                cell = row.cells[column];
+                if (cell.classList.contains("name")) {
+                    var celltext = cell.textContent;
+                    if (casefold) {
+                        celltext = celltext.toLowerCase();
+                    }
+                    if (celltext.includes(text)) {
+                        show = true;
+                    }
+                }
+            }
+
+            // Check the "hide covered" filter.
+            if (show && hide100) {
+                const [numer, denom] = row.cells[row.cells.length - 1].dataset.ratio.split(" ");
+                show = (numer !== denom);
+            }
+
+            if (!show) {
                 // hide
                 row.classList.add("hidden");
                 return;
@@ -114,15 +149,19 @@ coverage.wire_up_filter = function () {
             row.classList.remove("hidden");
             totals[0]++;
 
-            for (let column = 1; column < totals.length; column++) {
+            for (let column = 0; column < totals.length; column++) {
                 // Accumulate dynamic totals
                 cell = row.cells[column]  // nosemgrep: eslint.detect-object-injection
+                if (cell.classList.contains("name")) {
+                    continue;
+                }
                 if (column === totals.length - 1) {
                     // Last column contains percentage
                     const [numer, denom] = cell.dataset.ratio.split(" ");
                     totals[column]["numer"] += parseInt(numer, 10);  // nosemgrep: eslint.detect-object-injection
                     totals[column]["denom"] += parseInt(denom, 10);  // nosemgrep: eslint.detect-object-injection
-                } else {
+                }
+                else {
                     totals[column] += parseInt(cell.textContent, 10);  // nosemgrep: eslint.detect-object-injection
                 }
             }
@@ -142,9 +181,12 @@ coverage.wire_up_filter = function () {
 
         const footer = table.tFoot.rows[0];
         // Calculate new dynamic sum values based on visible rows.
-        for (let column = 1; column < totals.length; column++) {
+        for (let column = 0; column < totals.length; column++) {
             // Get footer cell element.
             const cell = footer.cells[column];  // nosemgrep: eslint.detect-object-injection
+            if (cell.classList.contains("name")) {
+                continue;
+            }
 
             // Set value into dynamic footer cell element.
             if (column === totals.length - 1) {
@@ -158,48 +200,47 @@ coverage.wire_up_filter = function () {
                 cell.textContent = denom
                     ? `${(numer * 100 / denom).toFixed(places)}%`
                     : `${(100).toFixed(places)}%`;
-            } else {
+            }
+            else {
                 cell.textContent = totals[column];  // nosemgrep: eslint.detect-object-injection
             }
         }
-    }));
+    });
+
+    document.getElementById("filter").addEventListener("input", debounce(filter_handler));
+    document.getElementById("hide100").addEventListener("input", debounce(filter_handler));
 
     // Trigger change event on setup, to force filter on page refresh
     // (filter value may still be present).
     document.getElementById("filter").dispatchEvent(new Event("input"));
+    document.getElementById("hide100").dispatchEvent(new Event("input"));
 };
 
-coverage.INDEX_SORT_STORAGE = "COVERAGE_INDEX_SORT_2";
-
-// Loaded on index.html
-coverage.index_ready = function () {
-    coverage.assign_shortkeys();
-    coverage.wire_up_filter();
+// Set up the click-to-sort columns.
+coverage.wire_up_sorting = function () {
     document.querySelectorAll("[data-sortable] th[aria-sort]").forEach(
         th => th.addEventListener("click", e => sortColumn(e.target))
     );
 
     // Look for a localStorage item containing previous sort settings:
+    var column = 0, direction = "ascending";
     const stored_list = localStorage.getItem(coverage.INDEX_SORT_STORAGE);
-
     if (stored_list) {
-        const {column, direction} = JSON.parse(stored_list);
-        const th = document.querySelector("[data-sortable]").tHead.rows[0].cells[column];  // nosemgrep: eslint.detect-object-injection
-        th.setAttribute("aria-sort", direction === "ascending" ? "descending" : "ascending");
-        th.click()
+        ({column, direction} = JSON.parse(stored_list));
     }
 
-    // Watch for page unload events so we can save the final sort settings:
-    window.addEventListener("unload", function () {
-        const th = document.querySelector('[data-sortable] th[aria-sort="ascending"], [data-sortable] [aria-sort="descending"]');
-        if (!th) {
-            return;
-        }
-        localStorage.setItem(coverage.INDEX_SORT_STORAGE, JSON.stringify({
-            column: [...th.parentElement.cells].indexOf(th),
-            direction: th.getAttribute("aria-sort"),
-        }));
-    });
+    const th = document.querySelector("[data-sortable]").tHead.rows[0].cells[column];  // nosemgrep: eslint.detect-object-injection
+    th.setAttribute("aria-sort", direction === "ascending" ? "descending" : "ascending");
+    th.click()
+};
+
+coverage.INDEX_SORT_STORAGE = "COVERAGE_INDEX_SORT_2";
+
+// Loaded on index.html
+coverage.index_ready = function () {
+    coverage.assign_shortkeys();
+    coverage.wire_up_filter();
+    coverage.wire_up_sorting();
 
     on_click(".button_prev_file", coverage.to_prev_file);
     on_click(".button_next_file", coverage.to_next_file);
@@ -217,7 +258,8 @@ coverage.pyfile_ready = function () {
     if (frag.length > 2 && frag[1] === "t") {
         document.querySelector(frag).closest(".n").classList.add("highlight");
         coverage.set_sel(parseInt(frag.substr(2), 10));
-    } else {
+    }
+    else {
         coverage.set_sel(0);
     }
 
@@ -441,7 +483,8 @@ coverage.to_next_chunk_nicely = function () {
         if (line.parentElement !== document.getElementById("source")) {
             // The element is not a source line but the header or similar
             coverage.select_line_or_chunk(1);
-        } else {
+        }
+        else {
             // We extract the line number from the id
             coverage.select_line_or_chunk(parseInt(line.id.substring(1), 10));
         }
@@ -460,7 +503,8 @@ coverage.to_prev_chunk_nicely = function () {
         if (line.parentElement !== document.getElementById("source")) {
             // The element is not a source line but the header or similar
             coverage.select_line_or_chunk(coverage.lines_len);
-        } else {
+        }
+        else {
             // We extract the line number from the id
             coverage.select_line_or_chunk(parseInt(line.id.substring(1), 10));
         }
@@ -562,7 +606,8 @@ coverage.build_scroll_markers = function () {
         if (line_number === previous_line + 1) {
             // If this solid missed block just make previous mark higher.
             last_mark.style.height = `${line_top + line_height - last_top}px`;
-        } else {
+        }
+        else {
             // Add colored line in scroll_marker block.
             last_mark = document.createElement("div");
             last_mark.id = `m${line_number}`;
@@ -590,7 +635,8 @@ coverage.wire_up_sticky_header = function () {
     function updateHeader() {
         if (window.scrollY > header_bottom) {
             header.classList.add("sticky");
-        } else {
+        }
+        else {
             header.classList.remove("sticky");
         }
     }
@@ -618,7 +664,8 @@ coverage.expand_contexts = function (e) {
 document.addEventListener("DOMContentLoaded", () => {
     if (document.body.classList.contains("indexfile")) {
         coverage.index_ready();
-    } else {
+    }
+    else {
         coverage.pyfile_ready();
     }
 });
diff --git a/doc/sample_html/function_index.html b/doc/sample_html/function_index.html
new file mode 100644
index 000000000..c24314733
--- /dev/null
+++ b/doc/sample_html/function_index.html
@@ -0,0 +1,2393 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+    <title>Cog coverage</title>
+    <link rel="icon" sizes="32x32" href="favicon_32.png">
+    <link rel="stylesheet" href="style.css" type="text/css">
+    <script src="coverage_html.js" defer></script>
+</head>
+<body class="indexfile">
+<header>
+    <div class="content">
+        <h1>Cog coverage:
+            <span class="pc_cov">38.64%</span>
+        </h1>
+        <aside id="help_panel_wrapper">
+            <input id="help_panel_state" type="checkbox">
+            <label for="help_panel_state">
+                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts">
+            </label>
+            <div id="help_panel">
+                <p class="legend">Shortcuts on this page</p>
+                <div class="keyhelp">
+                    <p>
+                        <kbd>f</kbd>
+                        <kbd>n</kbd>
+                        <kbd>s</kbd>
+                        <kbd>m</kbd>
+                        <kbd>x</kbd>
+                        <kbd>b</kbd>
+                        <kbd>p</kbd>
+                        <kbd>c</kbd>
+                        &nbsp; change column sorting
+                    </p>
+                    <p>
+                        <kbd>[</kbd>
+                        <kbd>]</kbd>
+                        &nbsp; prev/next file
+                    </p>
+                    <p>
+                        <kbd>?</kbd> &nbsp; show/hide this help
+                    </p>
+                </div>
+            </div>
+        </aside>
+        <form id="filter_container">
+            <input id="filter" type="text" value="" placeholder="filter...">
+            <div>
+                <input id="hide100" type="checkbox" >
+                <label for="hide100">hide covered</label>
+            </div>
+        </form>
+        <h2>
+                <a class="button" href="index.html">Files</a>
+                <a class="button current">Functions</a>
+                <a class="button" href="class_index.html">Classes</a>
+        </h2>
+        <p class="text">
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
+        </p>
+    </div>
+</header>
+<main id="index">
+    <table class="index" data-sortable>
+        <thead>
+            <tr class="tablehead" title="Click to sort">
+                <th class="name left" aria-sort="none" data-shortcut="f">File<span class="arrows"></span></th>
+                <th class="name left" aria-sort="none" data-default-sort-order="ascending" data-shortcut="n">function<span class="arrows"></span></th>
+                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="s">statements<span class="arrows"></span></th>
+                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="m">missing<span class="arrows"></span></th>
+                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="x">excluded<span class="arrows"></span></th>
+                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="b">branches<span class="arrows"></span></th>
+                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="p">partial<span class="arrows"></span></th>
+                <th class="right" aria-sort="none" data-shortcut="c">coverage<span class="arrows"></span></th>
+            </tr>
+        </thead>
+        <tbody>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80___init___py.html">cogapp/__init__.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80___init___py.html"><data value=''><span class='no-noun'>(no function)</span></data></a></td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="1 1">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80___main___py.html">cogapp/__main__.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80___main___py.html"><data value=''><span class='no-noun'>(no function)</span></data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t67">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t67"><data value='init__'>CogError.__init__</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>2</td>
+                <td>0</td>
+                <td class="right" data-ratio="5 5">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t103">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t103"><data value='init__'>CogGenerator.__init__</data></a></td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="4 4">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t109">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t109"><data value='parseMarker'>CogGenerator.parseMarker</data></a></td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="1 1">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t112">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t112"><data value='parseLine'>CogGenerator.parseLine</data></a></td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="1 1">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t115">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t115"><data value='getCode'>CogGenerator.getCode</data></a></td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>6</td>
+                <td>0</td>
+                <td class="right" data-ratio="11 11">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t128">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t128"><data value='evaluate'>CogGenerator.evaluate</data></a></td>
+                <td>33</td>
+                <td>4</td>
+                <td>0</td>
+                <td>16</td>
+                <td>4</td>
+                <td class="right" data-ratio="41 49">83.67%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t177">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t177"><data value='msg'>CogGenerator.msg</data></a></td>
+                <td>1</td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 1">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t180">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t180"><data value='out'>CogGenerator.out</data></a></td>
+                <td>10</td>
+                <td>0</td>
+                <td>0</td>
+                <td>8</td>
+                <td>0</td>
+                <td class="right" data-ratio="18 18">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t194">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t194"><data value='outl'>CogGenerator.outl</data></a></td>
+                <td>2</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="2 2">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t200">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t200"><data value='error'>CogGenerator.error</data></a></td>
+                <td>1</td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 1">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t212">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t212"><data value='init__'>CogOptions.__init__</data></a></td>
+                <td>22</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="22 22">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t237">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t237"><data value='eq__'>CogOptions.__eq__</data></a></td>
+                <td>1</td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 1">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t242">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t242"><data value='clone'>CogOptions.clone</data></a></td>
+                <td>1</td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 1">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t247">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t247"><data value='addToIncludePath'>CogOptions.addToIncludePath</data></a></td>
+                <td>2</td>
+                <td>2</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 2">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t253">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t253"><data value='parseArgs'>CogOptions.parseArgs</data></a></td>
+                <td>46</td>
+                <td>46</td>
+                <td>1</td>
+                <td>40</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 86">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t316">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t316"><data value='parse_markers'>CogOptions._parse_markers</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t324">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t324"><data value='validate'>CogOptions.validate</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>4</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 8">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t337">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t337"><data value='init__'>Cog.__init__</data></a></td>
+                <td>6</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="6 6">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t345">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t345"><data value='fixEndOutputPatterns'>Cog._fixEndOutputPatterns</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t350">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t350"><data value='showWarning'>Cog.showWarning</data></a></td>
+                <td>1</td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 1">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t353">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t353"><data value='isBeginSpecLine'>Cog.isBeginSpecLine</data></a></td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="1 1">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t356">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t356"><data value='isEndSpecLine'>Cog.isEndSpecLine</data></a></td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="1 1">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t359">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t359"><data value='isEndOutputLine'>Cog.isEndOutputLine</data></a></td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="1 1">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t362">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t362"><data value='createCogModule'>Cog.createCogModule</data></a></td>
+                <td>2</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="2 2">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t369">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t369"><data value='openOutputFile'>Cog.openOutputFile</data></a></td>
+                <td>9</td>
+                <td>9</td>
+                <td>0</td>
+                <td>4</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 13">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t382">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t382"><data value='openInputFile'>Cog.openInputFile</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>2</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t390">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t390"><data value='processFile'>Cog.processFile</data></a></td>
+                <td>104</td>
+                <td>23</td>
+                <td>0</td>
+                <td>60</td>
+                <td>21</td>
+                <td class="right" data-ratio="116 164">70.73%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t584">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t584"><data value='suffixLines'>Cog.suffixLines</data></a></td>
+                <td>4</td>
+                <td>2</td>
+                <td>0</td>
+                <td>2</td>
+                <td>1</td>
+                <td class="right" data-ratio="3 6">50.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t594">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t594"><data value='processString'>Cog.processString</data></a></td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="4 4">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t603">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t603"><data value='replaceFile'>Cog.replaceFile</data></a></td>
+                <td>11</td>
+                <td>11</td>
+                <td>0</td>
+                <td>6</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 17">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t622">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t622"><data value='saveIncludePath'>Cog.saveIncludePath</data></a></td>
+                <td>2</td>
+                <td>2</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 2">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t626">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t626"><data value='restoreIncludePath'>Cog.restoreIncludePath</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t631">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t631"><data value='addToIncludePath'>Cog.addToIncludePath</data></a></td>
+                <td>2</td>
+                <td>2</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 2">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t635">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t635"><data value='processOneFile'>Cog.processOneFile</data></a></td>
+                <td>31</td>
+                <td>31</td>
+                <td>0</td>
+                <td>16</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 47">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t687">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t687"><data value='processWildcards'>Cog.processWildcards</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>4</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 9">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t695">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t695"><data value='processFileList'>Cog.processFileList</data></a></td>
+                <td>11</td>
+                <td>11</td>
+                <td>0</td>
+                <td>4</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 15">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t712">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t712"><data value='processArguments'>Cog.processArguments</data></a></td>
+                <td>16</td>
+                <td>16</td>
+                <td>0</td>
+                <td>8</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 24">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t736">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t736"><data value='callableMain'>Cog.callableMain</data></a></td>
+                <td>16</td>
+                <td>16</td>
+                <td>0</td>
+                <td>10</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 26">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t765">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t765"><data value='main'>Cog.main</data></a></td>
+                <td>20</td>
+                <td>20</td>
+                <td>0</td>
+                <td>8</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 28">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t791">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t791"><data value='find_cog_source'>find_cog_source</data></a></td>
+                <td>14</td>
+                <td>8</td>
+                <td>0</td>
+                <td>8</td>
+                <td>2</td>
+                <td class="right" data-ratio="10 22">45.45%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t819">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html#t819"><data value='main'>main</data></a></td>
+                <td>1</td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 1">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html">cogapp/cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html"><data value=''><span class='no-noun'>(no function)</span></data></a></td>
+                <td>71</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="71 71">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_makefiles_py.html#t9">cogapp/makefiles.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_makefiles_py.html#t9"><data value='makeFiles'>makeFiles</data></a></td>
+                <td>11</td>
+                <td>11</td>
+                <td>0</td>
+                <td>8</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 19">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_makefiles_py.html#t25">cogapp/makefiles.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_makefiles_py.html#t25"><data value='removeFiles'>removeFiles</data></a></td>
+                <td>7</td>
+                <td>7</td>
+                <td>0</td>
+                <td>6</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 13">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_makefiles_py.html">cogapp/makefiles.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_makefiles_py.html"><data value=''><span class='no-noun'>(no function)</span></data></a></td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="4 4">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t27">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t27"><data value='testNoCog'>CogTestsInMemory.testNoCog</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>2</td>
+                <td>0</td>
+                <td class="right" data-ratio="5 5">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t39">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t39"><data value='testSimple'>CogTestsInMemory.testSimple</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t68">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t68"><data value='testEmptyCog'>CogTestsInMemory.testEmptyCog</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t82">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t82"><data value='testMultipleCogs'>CogTestsInMemory.testMultipleCogs</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t106">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t106"><data value='testTrimBlankLines'>CogTestsInMemory.testTrimBlankLines</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t124">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t124"><data value='testTrimEmptyBlankLines'>CogTestsInMemory.testTrimEmptyBlankLines</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t143">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t143"><data value='testTrimBlankLinesWithLastPartial'>CogTestsInMemory.testTrimBlankLinesWithLastPartial</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t158">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t158"><data value='testCogOutDedent'>CogTestsInMemory.testCogOutDedent</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t190">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t190"><data value='test22EndOfLine'>CogTestsInMemory.test22EndOfLine</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t208">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t208"><data value='testIndentedCode'>CogTestsInMemory.testIndentedCode</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t226">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t226"><data value='testPrefixedCode'>CogTestsInMemory.testPrefixedCode</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t242">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t242"><data value='testPrefixedIndentedCode'>CogTestsInMemory.testPrefixedIndentedCode</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t259">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t259"><data value='testBogusPrefixMatch'>CogTestsInMemory.testBogusPrefixMatch</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t277">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t277"><data value='testNoFinalNewline'>CogTestsInMemory.testNoFinalNewline</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t295">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t295"><data value='testNoOutputAtAll'>CogTestsInMemory.testNoOutputAtAll</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t309">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t309"><data value='testPurelyBlankLine'>CogTestsInMemory.testPurelyBlankLine</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t329">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t329"><data value='testEmptyOutl'>CogTestsInMemory.testEmptyOutl</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t355">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t355"><data value='testFirstLineNum'>CogTestsInMemory.testFirstLineNum</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t374">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t374"><data value='testCompactOneLineCode'>CogTestsInMemory.testCompactOneLineCode</data></a></td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="4 4">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t394">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t394"><data value='testInsideOutCompact'>CogTestsInMemory.testInsideOutCompact</data></a></td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="3 3">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t405">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t405"><data value='testSharingGlobals'>CogTestsInMemory.testSharingGlobals</data></a></td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="4 4">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t430">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t430"><data value='testAssertInCogCode'>CogTestsInMemory.testAssertInCogCode</data></a></td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="4 4">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t442">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t442"><data value='testCogPrevious'>CogTestsInMemory.testCogPrevious</data></a></td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="4 4">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t473">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t473"><data value='testEquality'>CogOptionsTests.testEquality</data></a></td>
+                <td>7</td>
+                <td>7</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 7">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t482">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t482"><data value='testCloning'>CogOptionsTests.testCloning</data></a></td>
+                <td>9</td>
+                <td>9</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 9">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t493">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t493"><data value='testCombiningFlags'>CogOptionsTests.testCombiningFlags</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t501">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t501"><data value='testMarkers'>CogOptionsTests.testMarkers</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t508">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t508"><data value='testMarkersSwitch'>CogOptionsTests.testMarkersSwitch</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t521">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t521"><data value='isBad'>FileStructureTests.isBad</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t526">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t526"><data value='testBeginNoEnd'>FileStructureTests.testBeginNoEnd</data></a></td>
+                <td>2</td>
+                <td>2</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 2">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t534">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t534"><data value='testNoEoo'>FileStructureTests.testNoEoo</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t554">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t554"><data value='testStartWithEnd'>FileStructureTests.testStartWithEnd</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t569">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t569"><data value='testStartWithEoo'>FileStructureTests.testStartWithEoo</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t584">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t584"><data value='testNoEnd'>FileStructureTests.testNoEnd</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t603">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t603"><data value='testTwoBegins'>FileStructureTests.testTwoBegins</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t626">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t626"><data value='testTwoEnds'>FileStructureTests.testTwoEnds</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t654">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t654"><data value='testErrorMsg'>CogErrorTests.testErrorMsg</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t664">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t664"><data value='testErrorNoMsg'>CogErrorTests.testErrorNoMsg</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t674">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t674"><data value='testNoErrorIfErrorNotCalled'>CogErrorTests.testNoErrorIfErrorNotCalled</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t698">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t698"><data value='setUp'>CogGeneratorGetCodeTests.setUp</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t706">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t706"><data value='testEmpty'>CogGeneratorGetCodeTests.testEmpty</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t711">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t711"><data value='testSimple'>CogGeneratorGetCodeTests.testSimple</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t718">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t718"><data value='testCompressed1'>CogGeneratorGetCodeTests.testCompressed1</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t726">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t726"><data value='testCompressed2'>CogGeneratorGetCodeTests.testCompressed2</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t734">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t734"><data value='testCompressed3'>CogGeneratorGetCodeTests.testCompressed3</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t742">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t742"><data value='testCompressed4'>CogGeneratorGetCodeTests.testCompressed4</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t750">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t750"><data value='testNoCommonPrefixForMarkers'>CogGeneratorGetCodeTests.testNoCommonPrefixForMarkers</data></a></td>
+                <td>6</td>
+                <td>6</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 6">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t763">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t763"><data value='newCog'>TestCaseWithTempDir.newCog</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t771">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t771"><data value='setUp'>TestCaseWithTempDir.setUp</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t779">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t779"><data value='tearDown'>TestCaseWithTempDir.tearDown</data></a></td>
+                <td>2</td>
+                <td>2</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 2">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t784">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t784"><data value='assertFilesSame'>TestCaseWithTempDir.assertFilesSame</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t791">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t791"><data value='assertFileContent'>TestCaseWithTempDir.assertFileContent</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t800">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t800"><data value='testArgumentFailure'>ArgumentHandlingTests.testArgumentFailure</data></a></td>
+                <td>7</td>
+                <td>7</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 7">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t810">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t810"><data value='testNoDashOAndAtFile'>ArgumentHandlingTests.testNoDashOAndAtFile</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t815">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t815"><data value='testNoDashOAndAmpFile'>ArgumentHandlingTests.testNoDashOAndAmpFile</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t820">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t820"><data value='testDashV'>ArgumentHandlingTests.testDashV</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t825">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t825"><data value='producesHelp'>ArgumentHandlingTests.producesHelp</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t831">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t831"><data value='testDashH'>ArgumentHandlingTests.testDashH</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t838">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t838"><data value='testDashOAndDashR'>ArgumentHandlingTests.testDashOAndDashR</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t849">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t849"><data value='testDashZ'>ArgumentHandlingTests.testDashZ</data></a></td>
+                <td>7</td>
+                <td>7</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 7">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t880">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t880"><data value='testBadDashD'>ArgumentHandlingTests.testBadDashD</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t886">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t886"><data value='testBadMarkers'>ArgumentHandlingTests.testBadMarkers</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t894">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t894"><data value='setUp'>TestMain.setUp</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t900">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t900"><data value='tearDown'>TestMain.tearDown</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t906">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t906"><data value='test_main_function'>TestMain.test_main_function</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t934">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t934"><data value='test_error_report'>TestMain.test_error_report</data></a></td>
+                <td>1</td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 1">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t937">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t937"><data value='test_error_report_with_prologue'>TestMain.test_error_report_with_prologue</data></a></td>
+                <td>1</td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 1">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t940">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t940"><data value='check_error_report'>TestMain.check_error_report</data></a></td>
+                <td>6</td>
+                <td>6</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 6">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t958">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t958"><data value='test_error_in_prologue'>TestMain.test_error_in_prologue</data></a></td>
+                <td>6</td>
+                <td>6</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 6">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t977">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t977"><data value='testSimple'>TestFileHandling.testSimple</data></a></td>
+                <td>6</td>
+                <td>6</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 6">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1009">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1009"><data value='testPrintOutput'>TestFileHandling.testPrintOutput</data></a></td>
+                <td>6</td>
+                <td>6</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 6">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1041">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1041"><data value='testWildcards'>TestFileHandling.testWildcards</data></a></td>
+                <td>8</td>
+                <td>8</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 8">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1105">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1105"><data value='testOutputFile'>TestFileHandling.testOutputFile</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1136">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1136"><data value='testAtFile'>TestFileHandling.testAtFile</data></a></td>
+                <td>7</td>
+                <td>7</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 7">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1183">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1183"><data value='testNestedAtFile'>TestFileHandling.testNestedAtFile</data></a></td>
+                <td>7</td>
+                <td>7</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 7">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1234">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1234"><data value='testAtFileWithArgs'>TestFileHandling.testAtFileWithArgs</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1276">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1276"><data value='testAtFileWithBadArgCombo'>TestFileHandling.testAtFileWithBadArgCombo</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1297">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1297"><data value='testAtFileWithTrickyFilenames'>TestFileHandling.testAtFileWithTrickyFilenames</data></a></td>
+                <td>7</td>
+                <td>7</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 7">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1298">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1298"><data value='fix_backslashes'>TestFileHandling.testAtFileWithTrickyFilenames.fix_backslashes</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>2</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1348">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1348"><data value='testAmpFile'>TestFileHandling.testAmpFile</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1383">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1383"><data value='run_with_verbosity'>TestFileHandling.run_with_verbosity</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1411">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1411"><data value='test_verbosity0'>TestFileHandling.test_verbosity0</data></a></td>
+                <td>2</td>
+                <td>2</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 2">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1415">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1415"><data value='test_verbosity1'>TestFileHandling.test_verbosity1</data></a></td>
+                <td>2</td>
+                <td>2</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 2">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1419">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1419"><data value='test_verbosity2'>TestFileHandling.test_verbosity2</data></a></td>
+                <td>2</td>
+                <td>2</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 2">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1445">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1445"><data value='testOutputNativeEol'>CogTestLineEndings.testOutputNativeEol</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1450">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1450"><data value='testOutputLfEol'>CogTestLineEndings.testOutputLfEol</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1455">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1455"><data value='testReplaceNativeEol'>CogTestLineEndings.testReplaceNativeEol</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1460">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1460"><data value='testReplaceLfEol'>CogTestLineEndings.testReplaceLfEol</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1468">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1468"><data value='testSimple'>CogTestCharacterEncoding.testSimple</data></a></td>
+                <td>6</td>
+                <td>6</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 6">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1494">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1494"><data value='testFileEncodingOption'>CogTestCharacterEncoding.testFileEncodingOption</data></a></td>
+                <td>6</td>
+                <td>6</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 6">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1527">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1527"><data value='setUp'>TestCaseWithImports.setUp</data></a></td>
+                <td>2</td>
+                <td>2</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 2">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1531">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1531"><data value='tearDown'>TestCaseWithImports.tearDown</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>4</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 8">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1589">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1589"><data value='testNeedIncludePath'>CogIncludeTests.testNeedIncludePath</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1596">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1596"><data value='testIncludePath'>CogIncludeTests.testIncludePath</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1602">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1602"><data value='testTwoIncludePaths'>CogIncludeTests.testTwoIncludePaths</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1608">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1608"><data value='testTwoIncludePaths2'>CogIncludeTests.testTwoIncludePaths2</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1614">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1614"><data value='testUselessIncludePath'>CogIncludeTests.testUselessIncludePath</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1620">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1620"><data value='testSysPathIsUnchanged'>CogIncludeTests.testSysPathIsUnchanged</data></a></td>
+                <td>26</td>
+                <td>26</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 26">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1665">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1665"><data value='testSubDirectories'>CogIncludeTests.testSubDirectories</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1701">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1701"><data value='testWarnIfNoCogCode'>CogTestsInFiles.testWarnIfNoCogCode</data></a></td>
+                <td>13</td>
+                <td>13</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 13">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1731">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1731"><data value='testFileNameProps'>CogTestsInFiles.testFileNameProps</data></a></td>
+                <td>7</td>
+                <td>7</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 7">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1765">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1765"><data value='testGlobalsDontCrossFiles'>CogTestsInFiles.testGlobalsDontCrossFiles</data></a></td>
+                <td>7</td>
+                <td>7</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 7">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1819">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1819"><data value='testRemoveGeneratedOutput'>CogTestsInFiles.testRemoveGeneratedOutput</data></a></td>
+                <td>10</td>
+                <td>10</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 10">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1861">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1861"><data value='testMsgCall'>CogTestsInFiles.testMsgCall</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1873">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1873"><data value='testErrorMessageHasNoTraceback'>CogTestsInFiles.testErrorMessageHasNoTraceback</data></a></td>
+                <td>7</td>
+                <td>7</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 7">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1897">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1897"><data value='testDashD'>CogTestsInFiles.testDashD</data></a></td>
+                <td>19</td>
+                <td>19</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 19">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1936">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1936"><data value='testOutputToStdout'>CogTestsInFiles.testOutputToStdout</data></a></td>
+                <td>9</td>
+                <td>9</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 9">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1953">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1953"><data value='testReadFromStdin'>CogTestsInFiles.testReadFromStdin</data></a></td>
+                <td>11</td>
+                <td>11</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 11">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1955">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1955"><data value='restore_stdin'>CogTestsInFiles.testReadFromStdin.restore_stdin</data></a></td>
+                <td>1</td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 1">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1968">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1968"><data value='testSuffixOutputLines'>CogTestsInFiles.testSuffixOutputLines</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1995">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t1995"><data value='testEmptySuffix'>CogTestsInFiles.testEmptySuffix</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2015">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2015"><data value='testHellishSuffix'>CogTestsInFiles.testHellishSuffix</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2033">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2033"><data value='testPrologue'>CogTestsInFiles.testPrologue</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2055">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2055"><data value='testThreads'>CogTestsInFiles.testThreads</data></a></td>
+                <td>13</td>
+                <td>13</td>
+                <td>0</td>
+                <td>8</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 21">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2073">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2073"><data value='thread_main'>CogTestsInFiles.testThreads.thread_main</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>2</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2093">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2093"><data value='run_check'>CheckTests.run_check</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2098">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2098"><data value='assert_made_files_unchanged'>CheckTests.assert_made_files_unchanged</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>4</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 9">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2105">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2105"><data value='test_check_no_cog'>CheckTests.test_check_no_cog</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2116">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2116"><data value='test_check_good'>CheckTests.test_check_good</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2131">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2131"><data value='test_check_bad'>CheckTests.test_check_bad</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2146">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2146"><data value='test_check_mixed'>CheckTests.test_check_mixed</data></a></td>
+                <td>7</td>
+                <td>7</td>
+                <td>0</td>
+                <td>2</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 9">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2174">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2174"><data value='test_check_with_good_checksum'>CheckTests.test_check_with_good_checksum</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2194">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2194"><data value='test_check_with_bad_checksum'>CheckTests.test_check_with_bad_checksum</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2247">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2247"><data value='setUp'>WritabilityTests.setUp</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2254">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2254"><data value='tearDown'>WritabilityTests.tearDown</data></a></td>
+                <td>2</td>
+                <td>2</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 2">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2258">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2258"><data value='testReadonlyNoCommand'>WritabilityTests.testReadonlyNoCommand</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2263">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2263"><data value='testReadonlyWithCommand'>WritabilityTests.testReadonlyWithCommand</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2268">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2268"><data value='testReadonlyWithCommandWithNoSlot'>WritabilityTests.testReadonlyWithCommandWithNoSlot</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2273">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2273"><data value='testReadonlyWithIneffectualCommand'>WritabilityTests.testReadonlyWithIneffectualCommand</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2281">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2281"><data value='testCreateChecksumOutput'>ChecksumTests.testCreateChecksumOutput</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2306">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2306"><data value='testCheckChecksumOutput'>ChecksumTests.testCheckChecksumOutput</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2335">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2335"><data value='testRemoveChecksumOutput'>ChecksumTests.testRemoveChecksumOutput</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2364">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2364"><data value='testTamperedChecksumOutput'>ChecksumTests.testTamperedChecksumOutput</data></a></td>
+                <td>14</td>
+                <td>14</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 14">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2458">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2458"><data value='testArgvIsntModified'>ChecksumTests.testArgvIsntModified</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2467">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2467"><data value='testCustomerMarkers'>CustomMarkerTests.testCustomerMarkers</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2493">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2493"><data value='testTrulyWackyMarkers'>CustomMarkerTests.testTrulyWackyMarkers</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2520">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2520"><data value='testChangeJustOneMarker'>CustomMarkerTests.testChangeJustOneMarker</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2550">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2550"><data value='testDeleteCode'>BlakeTests.testDeleteCode</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2578">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2578"><data value='testDeleteCodeWithDashRFails'>BlakeTests.testDeleteCodeWithDashRFails</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2589">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2589"><data value='testSettingGlobals'>BlakeTests.testSettingGlobals</data></a></td>
+                <td>7</td>
+                <td>7</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 7">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2620">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2620"><data value='testErrorCallHasNoTraceback'>ErrorCallTests.testErrorCallHasNoTraceback</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2636">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html#t2636"><data value='testRealErrorHasTraceback'>ErrorCallTests.testRealErrorHasTraceback</data></a></td>
+                <td>7</td>
+                <td>7</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 7">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html">cogapp/test_cogapp.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html"><data value=''><span class='no-noun'>(no function)</span></data></a></td>
+                <td>185</td>
+                <td>2</td>
+                <td>0</td>
+                <td>2</td>
+                <td>1</td>
+                <td class="right" data-ratio="184 187">98.40%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t15">cogapp/test_makefiles.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t15"><data value='setUp'>SimpleTests.setUp</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t21">cogapp/test_makefiles.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t21"><data value='tearDown'>SimpleTests.tearDown</data></a></td>
+                <td>1</td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 1">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t25">cogapp/test_makefiles.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t25"><data value='exists'>SimpleTests.exists</data></a></td>
+                <td>1</td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 1">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t28">cogapp/test_makefiles.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t28"><data value='checkFilesExist'>SimpleTests.checkFilesExist</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>4</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 8">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t34">cogapp/test_makefiles.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t34"><data value='checkFilesDontExist'>SimpleTests.checkFilesDontExist</data></a></td>
+                <td>2</td>
+                <td>2</td>
+                <td>0</td>
+                <td>2</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t38">cogapp/test_makefiles.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t38"><data value='testOneFile'>SimpleTests.testOneFile</data></a></td>
+                <td>11</td>
+                <td>11</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 11">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t53">cogapp/test_makefiles.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t53"><data value='testManyFiles'>SimpleTests.testManyFiles</data></a></td>
+                <td>6</td>
+                <td>6</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 6">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t69">cogapp/test_makefiles.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t69"><data value='testOverlapping'>SimpleTests.testOverlapping</data></a></td>
+                <td>12</td>
+                <td>12</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 12">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t95">cogapp/test_makefiles.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t95"><data value='testContents'>SimpleTests.testContents</data></a></td>
+                <td>6</td>
+                <td>6</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 6">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t103">cogapp/test_makefiles.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html#t103"><data value='testDedent'>SimpleTests.testDedent</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html">cogapp/test_makefiles.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html"><data value=''><span class='no-noun'>(no function)</span></data></a></td>
+                <td>17</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="17 17">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t12">cogapp/test_whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t12"><data value='testSingleLine'>WhitePrefixTests.testSingleLine</data></a></td>
+                <td>7</td>
+                <td>7</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 7">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t21">cogapp/test_whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t21"><data value='testMultiLine'>WhitePrefixTests.testMultiLine</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t26">cogapp/test_whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t26"><data value='testBlankLinesAreIgnored'>WhitePrefixTests.testBlankLinesAreIgnored</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t32">cogapp/test_whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t32"><data value='testTabCharacters'>WhitePrefixTests.testTabCharacters</data></a></td>
+                <td>1</td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 1">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t35">cogapp/test_whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t35"><data value='testDecreasingLengths'>WhitePrefixTests.testDecreasingLengths</data></a></td>
+                <td>2</td>
+                <td>2</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 2">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t43">cogapp/test_whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t43"><data value='testNonTermLine'>ReindentBlockTests.testNonTermLine</data></a></td>
+                <td>10</td>
+                <td>10</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 10">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t55">cogapp/test_whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t55"><data value='testSingleLine'>ReindentBlockTests.testSingleLine</data></a></td>
+                <td>10</td>
+                <td>10</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 10">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t67">cogapp/test_whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t67"><data value='testRealBlock'>ReindentBlockTests.testRealBlock</data></a></td>
+                <td>1</td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 1">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t77">cogapp/test_whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t77"><data value='testDegenerateCases'>CommonPrefixTests.testDegenerateCases</data></a></td>
+                <td>4</td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 4">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t83">cogapp/test_whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t83"><data value='testNoCommonPrefix'>CommonPrefixTests.testNoCommonPrefix</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t88">cogapp/test_whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t88"><data value='testUsualCases'>CommonPrefixTests.testUsualCases</data></a></td>
+                <td>3</td>
+                <td>3</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 3">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t93">cogapp/test_whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t93"><data value='testBlankLine'>CommonPrefixTests.testBlankLine</data></a></td>
+                <td>1</td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 1">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t96">cogapp/test_whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html#t96"><data value='testDecreasingLengths'>CommonPrefixTests.testDecreasingLengths</data></a></td>
+                <td>1</td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 1">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html">cogapp/test_whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html"><data value=''><span class='no-noun'>(no function)</span></data></a></td>
+                <td>18</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="18 18">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t22">cogapp/utils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t22"><data value='init__'>Redirectable.__init__</data></a></td>
+                <td>2</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="2 2">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t26">cogapp/utils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t26"><data value='setOutput'>Redirectable.setOutput</data></a></td>
+                <td>4</td>
+                <td>1</td>
+                <td>0</td>
+                <td>4</td>
+                <td>2</td>
+                <td class="right" data-ratio="5 8">62.50%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t34">cogapp/utils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t34"><data value='prout'>Redirectable.prout</data></a></td>
+                <td>1</td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 1">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t37">cogapp/utils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t37"><data value='prerr'>Redirectable.prerr</data></a></td>
+                <td>1</td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 1">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t44">cogapp/utils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t44"><data value='init__'>NumberedFileReader.__init__</data></a></td>
+                <td>2</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="2 2">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t48">cogapp/utils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t48"><data value='readline'>NumberedFileReader.readline</data></a></td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>2</td>
+                <td>0</td>
+                <td class="right" data-ratio="6 6">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t54">cogapp/utils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t54"><data value='linenumber'>NumberedFileReader.linenumber</data></a></td>
+                <td>1</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="1 1">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t59">cogapp/utils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html#t59"><data value='change_dir'>change_dir</data></a></td>
+                <td>5</td>
+                <td>5</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="0 5">0.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html">cogapp/utils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html"><data value=''><span class='no-noun'>(no function)</span></data></a></td>
+                <td>17</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="17 17">100.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_whiteutils_py.html#t7">cogapp/whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_whiteutils_py.html#t7"><data value='whitePrefix'>whitePrefix</data></a></td>
+                <td>12</td>
+                <td>3</td>
+                <td>0</td>
+                <td>12</td>
+                <td>2</td>
+                <td class="right" data-ratio="19 24">79.17%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_whiteutils_py.html#t32">cogapp/whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_whiteutils_py.html#t32"><data value='reindentBlock'>reindentBlock</data></a></td>
+                <td>14</td>
+                <td>1</td>
+                <td>0</td>
+                <td>10</td>
+                <td>1</td>
+                <td class="right" data-ratio="22 24">91.67%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_whiteutils_py.html#t52">cogapp/whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_whiteutils_py.html#t52"><data value='commonPrefix'>commonPrefix</data></a></td>
+                <td>13</td>
+                <td>1</td>
+                <td>0</td>
+                <td>12</td>
+                <td>1</td>
+                <td class="right" data-ratio="23 25">92.00%</td>
+            </tr>
+            <tr class="region">
+                <td class="name left"><a href="z_7b071bdc2a35fa80_whiteutils_py.html">cogapp/whiteutils.py</a></td>
+                <td class="name left"><a href="z_7b071bdc2a35fa80_whiteutils_py.html"><data value=''><span class='no-noun'>(no function)</span></data></a></td>
+                <td>4</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td>0</td>
+                <td class="right" data-ratio="4 4">100.00%</td>
+            </tr>
+        </tbody>
+        <tfoot>
+            <tr class="total">
+                <td class="name left">Total</td>
+                <td class="name left">&nbsp;</td>
+                <td>1579</td>
+                <td>961</td>
+                <td>3</td>
+                <td>292</td>
+                <td>35</td>
+                <td class="right" data-ratio="723 1871">38.64%</td>
+            </tr>
+        </tfoot>
+    </table>
+    <p id="no_rows">
+        No items found using the specified filter.
+    </p>
+</main>
+<footer>
+    <div class="content">
+        <p>
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
+        </p>
+    </div>
+    <aside class="hidden">
+        <a id="prevFileLink" class="nav" href=""></a>
+        <a id="nextFileLink" class="nav" href=""></a>
+        <button type="button" class="button_prev_file" data-shortcut="["></button>
+        <button type="button" class="button_next_file" data-shortcut="]"></button>
+        <button type="button" class="button_show_hide_help" data-shortcut="?"></button>
+    </aside>
+</footer>
+</body>
+</html>
diff --git a/doc/sample_html/index.html b/doc/sample_html/index.html
index 6ed6852af..5a6c4fcc3 100644
--- a/doc/sample_html/index.html
+++ b/doc/sample_html/index.html
@@ -1,11 +1,11 @@
 <!DOCTYPE html>
-<html>
+<html lang="en">
 <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>Cog coverage</title>
     <link rel="icon" sizes="32x32" href="favicon_32.png">
     <link rel="stylesheet" href="style.css" type="text/css">
-    <script type="text/javascript" src="coverage_html.js" defer></script>
+    <script src="coverage_html.js" defer></script>
 </head>
 <body class="indexfile">
 <header>
@@ -16,13 +16,13 @@ <h1>Cog coverage:
         <aside id="help_panel_wrapper">
             <input id="help_panel_state" type="checkbox">
             <label for="help_panel_state">
-                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts" />
+                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts">
             </label>
             <div id="help_panel">
                 <p class="legend">Shortcuts on this page</p>
                 <div class="keyhelp">
                     <p>
-                        <kbd>n</kbd>
+                        <kbd>f</kbd>
                         <kbd>s</kbd>
                         <kbd>m</kbd>
                         <kbd>x</kbd>
@@ -43,11 +43,20 @@ <h1>Cog coverage:
             </div>
         </aside>
         <form id="filter_container">
-            <input id="filter" type="text" value="" placeholder="filter..." />
+            <input id="filter" type="text" value="" placeholder="filter...">
+            <div>
+                <input id="hide100" type="checkbox" >
+                <label for="hide100">hide covered</label>
+            </div>
         </form>
+        <h2>
+                <a class="button current">Files</a>
+                <a class="button" href="function_index.html">Functions</a>
+                <a class="button" href="class_index.html">Classes</a>
+        </h2>
         <p class="text">
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
     </div>
 </header>
@@ -55,17 +64,17 @@ <h1>Cog coverage:
     <table class="index" data-sortable>
         <thead>
             <tr class="tablehead" title="Click to sort">
-                <th class="name left" aria-sort="none" data-shortcut="n">Module</th>
-                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="s">statements</th>
-                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="m">missing</th>
-                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="x">excluded</th>
-                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="b">branches</th>
-                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="p">partial</th>
-                <th class="right" aria-sort="none" data-shortcut="c">coverage</th>
+                <th class="name left" aria-sort="none" data-shortcut="f">File<span class="arrows"></span></th>
+                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="s">statements<span class="arrows"></span></th>
+                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="m">missing<span class="arrows"></span></th>
+                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="x">excluded<span class="arrows"></span></th>
+                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="b">branches<span class="arrows"></span></th>
+                <th aria-sort="none" data-default-sort-order="descending" data-shortcut="p">partial<span class="arrows"></span></th>
+                <th class="right" aria-sort="none" data-shortcut="c">coverage<span class="arrows"></span></th>
             </tr>
         </thead>
         <tbody>
-            <tr class="file">
+            <tr class="region">
                 <td class="name left"><a href="z_7b071bdc2a35fa80___init___py.html">cogapp/__init__.py</a></td>
                 <td>1</td>
                 <td>0</td>
@@ -74,7 +83,7 @@ <h1>Cog coverage:
                 <td>0</td>
                 <td class="right" data-ratio="1 1">100.00%</td>
             </tr>
-            <tr class="file">
+            <tr class="region">
                 <td class="name left"><a href="z_7b071bdc2a35fa80___main___py.html">cogapp/__main__.py</a></td>
                 <td>3</td>
                 <td>3</td>
@@ -83,7 +92,7 @@ <h1>Cog coverage:
                 <td>0</td>
                 <td class="right" data-ratio="0 3">0.00%</td>
             </tr>
-            <tr class="file">
+            <tr class="region">
                 <td class="name left"><a href="z_7b071bdc2a35fa80_cogapp_py.html">cogapp/cogapp.py</a></td>
                 <td>483</td>
                 <td>228</td>
@@ -92,7 +101,7 @@ <h1>Cog coverage:
                 <td>28</td>
                 <td class="right" data-ratio="323 691">46.74%</td>
             </tr>
-            <tr class="file">
+            <tr class="region">
                 <td class="name left"><a href="z_7b071bdc2a35fa80_makefiles_py.html">cogapp/makefiles.py</a></td>
                 <td>22</td>
                 <td>18</td>
@@ -101,7 +110,7 @@ <h1>Cog coverage:
                 <td>0</td>
                 <td class="right" data-ratio="4 36">11.11%</td>
             </tr>
-            <tr class="file">
+            <tr class="region">
                 <td class="name left"><a href="z_7b071bdc2a35fa80_test_cogapp_py.html">cogapp/test_cogapp.py</a></td>
                 <td>854</td>
                 <td>598</td>
@@ -110,7 +119,7 @@ <h1>Cog coverage:
                 <td>1</td>
                 <td class="right" data-ratio="259 878">29.50%</td>
             </tr>
-            <tr class="file">
+            <tr class="region">
                 <td class="name left"><a href="z_7b071bdc2a35fa80_test_makefiles_py.html">cogapp/test_makefiles.py</a></td>
                 <td>68</td>
                 <td>51</td>
@@ -119,7 +128,7 @@ <h1>Cog coverage:
                 <td>0</td>
                 <td class="right" data-ratio="17 74">22.97%</td>
             </tr>
-            <tr class="file">
+            <tr class="region">
                 <td class="name left"><a href="z_7b071bdc2a35fa80_test_whiteutils_py.html">cogapp/test_whiteutils.py</a></td>
                 <td>68</td>
                 <td>50</td>
@@ -128,7 +137,7 @@ <h1>Cog coverage:
                 <td>0</td>
                 <td class="right" data-ratio="18 68">26.47%</td>
             </tr>
-            <tr class="file">
+            <tr class="region">
                 <td class="name left"><a href="z_7b071bdc2a35fa80_utils_py.html">cogapp/utils.py</a></td>
                 <td>37</td>
                 <td>8</td>
@@ -137,7 +146,7 @@ <h1>Cog coverage:
                 <td>2</td>
                 <td class="right" data-ratio="33 43">76.74%</td>
             </tr>
-            <tr class="file">
+            <tr class="region">
                 <td class="name left"><a href="z_7b071bdc2a35fa80_whiteutils_py.html">cogapp/whiteutils.py</a></td>
                 <td>43</td>
                 <td>5</td>
@@ -166,16 +175,16 @@ <h1>Cog coverage:
 <footer>
     <div class="content">
         <p>
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
     </div>
     <aside class="hidden">
-        <a id="prevFileLink" class="nav" href="z_7b071bdc2a35fa80_whiteutils_py.html"/>
-        <a id="nextFileLink" class="nav" href="z_7b071bdc2a35fa80___init___py.html"/>
-        <button type="button" class="button_prev_file" data-shortcut="["/>
-        <button type="button" class="button_next_file" data-shortcut="]"/>
-        <button type="button" class="button_show_hide_help" data-shortcut="?"/>
+        <a id="prevFileLink" class="nav" href="z_7b071bdc2a35fa80_whiteutils_py.html"></a>
+        <a id="nextFileLink" class="nav" href="z_7b071bdc2a35fa80___init___py.html"></a>
+        <button type="button" class="button_prev_file" data-shortcut="["></button>
+        <button type="button" class="button_next_file" data-shortcut="]"></button>
+        <button type="button" class="button_show_hide_help" data-shortcut="?"></button>
     </aside>
 </footer>
 </body>
diff --git a/doc/sample_html/status.json b/doc/sample_html/status.json
index f5e378359..cd72fa04c 100644
--- a/doc/sample_html/status.json
+++ b/doc/sample_html/status.json
@@ -1 +1 @@
-{"note":"This file is an internal implementation detail to speed up HTML report generation. Its format can change at any time. You might be looking for the JSON report: https://coverage.rtfd.io/cmd.html#cmd-json","format":2,"version":"7.4.5a0.dev1","globals":"93b51f0c694fe02b0939ee4dd75fe224","files":{"z_7b071bdc2a35fa80___init___py":{"hash":"669207c1fb29be3e8be6ce0639506cab","index":{"nums":null,"numlist":[2,1,1,0,0,0,0,0],"html_filename":"z_7b071bdc2a35fa80___init___py.html","relative_filename":"cogapp/__init__.py"}},"z_7b071bdc2a35fa80___main___py":{"hash":"6d9d0d551879aa3e73791f40c5739845","index":{"nums":null,"numlist":[2,1,3,0,3,0,0,0],"html_filename":"z_7b071bdc2a35fa80___main___py.html","relative_filename":"cogapp/__main__.py"}},"z_7b071bdc2a35fa80_cogapp_py":{"hash":"3b620625b0506d140beda5c04a03a961","index":{"nums":null,"numlist":[2,1,483,1,228,208,28,140],"html_filename":"z_7b071bdc2a35fa80_cogapp_py.html","relative_filename":"cogapp/cogapp.py"}},"z_7b071bdc2a35fa80_makefiles_py":{"hash":"e73ea90ac9a2e7af9d1fdb188ea22dfe","index":{"nums":null,"numlist":[2,1,22,0,18,14,0,14],"html_filename":"z_7b071bdc2a35fa80_makefiles_py.html","relative_filename":"cogapp/makefiles.py"}},"z_7b071bdc2a35fa80_test_cogapp_py":{"hash":"f7e93bafb25b733e134d8c75e2d3cc24","index":{"nums":null,"numlist":[2,1,854,2,598,24,1,21],"html_filename":"z_7b071bdc2a35fa80_test_cogapp_py.html","relative_filename":"cogapp/test_cogapp.py"}},"z_7b071bdc2a35fa80_test_makefiles_py":{"hash":"b2e0cdd09c01a8b0e4bdae02e1cfa856","index":{"nums":null,"numlist":[2,1,68,0,51,6,0,6],"html_filename":"z_7b071bdc2a35fa80_test_makefiles_py.html","relative_filename":"cogapp/test_makefiles.py"}},"z_7b071bdc2a35fa80_test_whiteutils_py":{"hash":"4511a89ca54b865d6397d6b7d315c35c","index":{"nums":null,"numlist":[2,1,68,0,50,0,0,0],"html_filename":"z_7b071bdc2a35fa80_test_whiteutils_py.html","relative_filename":"cogapp/test_whiteutils.py"}},"z_7b071bdc2a35fa80_utils_py":{"hash":"f8df213bfbf38327877cdb9699b0ec41","index":{"nums":null,"numlist":[2,1,37,0,8,6,2,2],"html_filename":"z_7b071bdc2a35fa80_utils_py.html","relative_filename":"cogapp/utils.py"}},"z_7b071bdc2a35fa80_whiteutils_py":{"hash":"c68cfd051fc76896fdb23127cf2ca0ea","index":{"nums":null,"numlist":[2,1,43,0,5,34,4,4],"html_filename":"z_7b071bdc2a35fa80_whiteutils_py.html","relative_filename":"cogapp/whiteutils.py"}}}}
\ No newline at end of file
+{"note":"This file is an internal implementation detail to speed up HTML report generation. Its format can change at any time. You might be looking for the JSON report: https://coverage.rtfd.io/cmd.html#cmd-json","format":5,"version":"7.5.0","globals":"6209e941d022650f2b874068b895003a","files":{"z_7b071bdc2a35fa80___init___py":{"hash":"669207c1fb29be3e8be6ce0639506cab","index":{"url":"z_7b071bdc2a35fa80___init___py.html","file":"cogapp/__init__.py","description":"","nums":{"precision":2,"n_files":1,"n_statements":1,"n_excluded":0,"n_missing":0,"n_branches":0,"n_partial_branches":0,"n_missing_branches":0}}},"z_7b071bdc2a35fa80___main___py":{"hash":"6d9d0d551879aa3e73791f40c5739845","index":{"url":"z_7b071bdc2a35fa80___main___py.html","file":"cogapp/__main__.py","description":"","nums":{"precision":2,"n_files":1,"n_statements":3,"n_excluded":0,"n_missing":3,"n_branches":0,"n_partial_branches":0,"n_missing_branches":0}}},"z_7b071bdc2a35fa80_cogapp_py":{"hash":"3b620625b0506d140beda5c04a03a961","index":{"url":"z_7b071bdc2a35fa80_cogapp_py.html","file":"cogapp/cogapp.py","description":"","nums":{"precision":2,"n_files":1,"n_statements":483,"n_excluded":1,"n_missing":228,"n_branches":208,"n_partial_branches":28,"n_missing_branches":140}}},"z_7b071bdc2a35fa80_makefiles_py":{"hash":"e73ea90ac9a2e7af9d1fdb188ea22dfe","index":{"url":"z_7b071bdc2a35fa80_makefiles_py.html","file":"cogapp/makefiles.py","description":"","nums":{"precision":2,"n_files":1,"n_statements":22,"n_excluded":0,"n_missing":18,"n_branches":14,"n_partial_branches":0,"n_missing_branches":14}}},"z_7b071bdc2a35fa80_test_cogapp_py":{"hash":"f7e93bafb25b733e134d8c75e2d3cc24","index":{"url":"z_7b071bdc2a35fa80_test_cogapp_py.html","file":"cogapp/test_cogapp.py","description":"","nums":{"precision":2,"n_files":1,"n_statements":854,"n_excluded":2,"n_missing":598,"n_branches":24,"n_partial_branches":1,"n_missing_branches":21}}},"z_7b071bdc2a35fa80_test_makefiles_py":{"hash":"b2e0cdd09c01a8b0e4bdae02e1cfa856","index":{"url":"z_7b071bdc2a35fa80_test_makefiles_py.html","file":"cogapp/test_makefiles.py","description":"","nums":{"precision":2,"n_files":1,"n_statements":68,"n_excluded":0,"n_missing":51,"n_branches":6,"n_partial_branches":0,"n_missing_branches":6}}},"z_7b071bdc2a35fa80_test_whiteutils_py":{"hash":"4511a89ca54b865d6397d6b7d315c35c","index":{"url":"z_7b071bdc2a35fa80_test_whiteutils_py.html","file":"cogapp/test_whiteutils.py","description":"","nums":{"precision":2,"n_files":1,"n_statements":68,"n_excluded":0,"n_missing":50,"n_branches":0,"n_partial_branches":0,"n_missing_branches":0}}},"z_7b071bdc2a35fa80_utils_py":{"hash":"f8df213bfbf38327877cdb9699b0ec41","index":{"url":"z_7b071bdc2a35fa80_utils_py.html","file":"cogapp/utils.py","description":"","nums":{"precision":2,"n_files":1,"n_statements":37,"n_excluded":0,"n_missing":8,"n_branches":6,"n_partial_branches":2,"n_missing_branches":2}}},"z_7b071bdc2a35fa80_whiteutils_py":{"hash":"c68cfd051fc76896fdb23127cf2ca0ea","index":{"url":"z_7b071bdc2a35fa80_whiteutils_py.html","file":"cogapp/whiteutils.py","description":"","nums":{"precision":2,"n_files":1,"n_statements":43,"n_excluded":0,"n_missing":5,"n_branches":34,"n_partial_branches":4,"n_missing_branches":4}}}}}
\ No newline at end of file
diff --git a/doc/sample_html/style.css b/doc/sample_html/style.css
index aec9cbef2..3cdaf05a3 100644
--- a/doc/sample_html/style.css
+++ b/doc/sample_html/style.css
@@ -22,7 +22,7 @@ td { vertical-align: top; }
 
 table tr.hidden { display: none !important; }
 
-p#no_rows { display: none; font-size: 1.2em; }
+p#no_rows { display: none; font-size: 1.15em; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; }
 
 a.nav { text-decoration: none; color: inherit; }
 
@@ -40,6 +40,18 @@ header .content { padding: 1rem 3.5rem; }
 
 header h2 { margin-top: .5em; font-size: 1em; }
 
+header h2 a.button { font-family: inherit; font-size: inherit; border: 1px solid; border-radius: .2em; background: #eee; color: inherit; text-decoration: none; padding: .1em .5em; margin: 1px calc(.1em + 1px); cursor: pointer; border-color: #ccc; }
+
+@media (prefers-color-scheme: dark) { header h2 a.button { background: #333; } }
+
+@media (prefers-color-scheme: dark) { header h2 a.button { border-color: #444; } }
+
+header h2 a.button.current { border: 2px solid; background: #fff; border-color: #999; cursor: default; }
+
+@media (prefers-color-scheme: dark) { header h2 a.button.current { background: #1e1e1e; } }
+
+@media (prefers-color-scheme: dark) { header h2 a.button.current { border-color: #777; } }
+
 header p.text { margin: .5em 0 -.5em; color: #666; font-style: italic; }
 
 @media (prefers-color-scheme: dark) { header p.text { color: #aaa; } }
@@ -68,19 +80,29 @@ footer .content { padding: 0; color: #666; font-style: italic; }
 
 h1 { font-size: 1.25em; display: inline-block; }
 
-#filter_container { float: right; margin: 0 2em 0 0; }
+#filter_container { float: right; margin: 0 2em 0 0; line-height: 1.66em; }
+
+#filter_container #filter { width: 10em; padding: 0.2em 0.5em; border: 2px solid #ccc; background: #fff; color: #000; }
 
-#filter_container input { width: 10em; padding: 0.2em 0.5em; border: 2px solid #ccc; background: #fff; color: #000; }
+@media (prefers-color-scheme: dark) { #filter_container #filter { border-color: #444; } }
 
-@media (prefers-color-scheme: dark) { #filter_container input { border-color: #444; } }
+@media (prefers-color-scheme: dark) { #filter_container #filter { background: #1e1e1e; } }
 
-@media (prefers-color-scheme: dark) { #filter_container input { background: #1e1e1e; } }
+@media (prefers-color-scheme: dark) { #filter_container #filter { color: #eee; } }
 
-@media (prefers-color-scheme: dark) { #filter_container input { color: #eee; } }
+#filter_container #filter:focus { border-color: #007acc; }
 
-#filter_container input:focus { border-color: #007acc; }
+#filter_container :disabled ~ label { color: #ccc; }
 
-header button { font-family: inherit; font-size: inherit; border: 1px solid; border-radius: .2em; color: inherit; padding: .1em .5em; margin: 1px calc(.1em + 1px); cursor: pointer; border-color: #ccc; }
+@media (prefers-color-scheme: dark) { #filter_container :disabled ~ label { color: #444; } }
+
+#filter_container label { font-size: .875em; color: #666; }
+
+@media (prefers-color-scheme: dark) { #filter_container label { color: #aaa; } }
+
+header button { font-family: inherit; font-size: inherit; border: 1px solid; border-radius: .2em; background: #eee; color: inherit; text-decoration: none; padding: .1em .5em; margin: 1px calc(.1em + 1px); cursor: pointer; border-color: #ccc; }
+
+@media (prefers-color-scheme: dark) { header button { background: #333; } }
 
 @media (prefers-color-scheme: dark) { header button { border-color: #444; } }
 
@@ -266,13 +288,13 @@ kbd { border: 1px solid black; border-color: #888 #333 #333 #888; padding: .1em
 
 #index table.index { margin-left: -.5em; }
 
-#index td, #index th { text-align: right; width: 5em; padding: .25em .5em; border-bottom: 1px solid #eee; }
+#index td, #index th { text-align: right; padding: .25em .5em; border-bottom: 1px solid #eee; }
 
 @media (prefers-color-scheme: dark) { #index td, #index th { border-color: #333; } }
 
-#index td.name, #index th.name { text-align: left; width: auto; }
+#index td.name, #index th.name { text-align: left; width: auto; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; min-width: 15em; }
 
-#index th { font-style: italic; color: #333; cursor: pointer; }
+#index th { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-style: italic; color: #333; cursor: pointer; }
 
 @media (prefers-color-scheme: dark) { #index th { color: #ddd; } }
 
@@ -280,23 +302,29 @@ kbd { border: 1px solid black; border-color: #888 #333 #333 #888; padding: .1em
 
 @media (prefers-color-scheme: dark) { #index th:hover { background: #333; } }
 
+#index th .arrows { color: #666; font-size: 85%; font-family: sans-serif; font-style: normal; pointer-events: none; }
+
 #index th[aria-sort="ascending"], #index th[aria-sort="descending"] { white-space: nowrap; background: #eee; padding-left: .5em; }
 
 @media (prefers-color-scheme: dark) { #index th[aria-sort="ascending"], #index th[aria-sort="descending"] { background: #333; } }
 
-#index th[aria-sort="ascending"]::after { font-family: sans-serif; content: " ↑"; }
+#index th[aria-sort="ascending"] .arrows::after { content: " ▲"; }
+
+#index th[aria-sort="descending"] .arrows::after { content: " ▼"; }
 
-#index th[aria-sort="descending"]::after { font-family: sans-serif; content: " ↓"; }
+#index td.name { font-size: 1.15em; }
 
 #index td.name a { text-decoration: none; color: inherit; }
 
+#index td.name .no-noun { font-style: italic; }
+
 #index tr.total td, #index tr.total_dynamic td { font-weight: bold; border-top: 1px solid #ccc; border-bottom: none; }
 
-#index tr.file:hover { background: #eee; }
+#index tr.region:hover { background: #eee; }
 
-@media (prefers-color-scheme: dark) { #index tr.file:hover { background: #333; } }
+@media (prefers-color-scheme: dark) { #index tr.region:hover { background: #333; } }
 
-#index tr.file:hover td.name { text-decoration: underline; color: inherit; }
+#index tr.region:hover td.name { text-decoration: underline; color: inherit; }
 
 #scroll_marker { position: fixed; z-index: 3; right: 0; top: 0; width: 16px; height: 100%; background: #fff; border-left: 1px solid #eee; will-change: transform; }
 
diff --git a/doc/sample_html/z_7b071bdc2a35fa80___init___py.html b/doc/sample_html/z_7b071bdc2a35fa80___init___py.html
index 678733dcc..4a59bb133 100644
--- a/doc/sample_html/z_7b071bdc2a35fa80___init___py.html
+++ b/doc/sample_html/z_7b071bdc2a35fa80___init___py.html
@@ -1,11 +1,11 @@
 <!DOCTYPE html>
-<html>
+<html lang="en">
 <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>Coverage for cogapp/__init__.py: 100.00%</title>
     <link rel="icon" sizes="32x32" href="favicon_32.png">
     <link rel="stylesheet" href="style.css" type="text/css">
-    <script type="text/javascript" src="coverage_html.js" defer></script>
+    <script src="coverage_html.js" defer></script>
 </head>
 <body class="pyfile">
 <header>
@@ -17,7 +17,7 @@ <h1>
         <aside id="help_panel_wrapper">
             <input id="help_panel_state" type="checkbox">
             <label for="help_panel_state">
-                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts" />
+                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts">
             </label>
             <div id="help_panel">
                 <p class="legend">Shortcuts on this page</p>
@@ -66,18 +66,18 @@ <h2>
             <a id="indexLink" class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
             <a id="nextFileLink" class="nav" href="z_7b071bdc2a35fa80___main___py.html">&#xbb; next</a>
             &nbsp; &nbsp; &nbsp;
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
         <aside class="hidden">
-            <button type="button" class="button_next_chunk" data-shortcut="j"/>
-            <button type="button" class="button_prev_chunk" data-shortcut="k"/>
-            <button type="button" class="button_top_of_page" data-shortcut="0"/>
-            <button type="button" class="button_first_chunk" data-shortcut="1"/>
-            <button type="button" class="button_prev_file" data-shortcut="["/>
-            <button type="button" class="button_next_file" data-shortcut="]"/>
-            <button type="button" class="button_to_index" data-shortcut="u"/>
-            <button type="button" class="button_show_hide_help" data-shortcut="?"/>
+            <button type="button" class="button_next_chunk" data-shortcut="j"></button>
+            <button type="button" class="button_prev_chunk" data-shortcut="k"></button>
+            <button type="button" class="button_top_of_page" data-shortcut="0"></button>
+            <button type="button" class="button_first_chunk" data-shortcut="1"></button>
+            <button type="button" class="button_prev_file" data-shortcut="["></button>
+            <button type="button" class="button_next_file" data-shortcut="]"></button>
+            <button type="button" class="button_to_index" data-shortcut="u"></button>
+            <button type="button" class="button_show_hide_help" data-shortcut="?"></button>
         </aside>
     </div>
 </header>
@@ -93,12 +93,12 @@ <h2>
 <footer>
     <div class="content">
         <p>
-            <a id="prevFileLink" class="nav" href="index.html">&#xab; prev</a> &nbsp; &nbsp;
-            <a id="indexLink" class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
-            <a id="nextFileLink" class="nav" href="z_7b071bdc2a35fa80___main___py.html">&#xbb; next</a>
+            <a class="nav" href="index.html">&#xab; prev</a> &nbsp; &nbsp;
+            <a class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
+            <a class="nav" href="z_7b071bdc2a35fa80___main___py.html">&#xbb; next</a>
             &nbsp; &nbsp; &nbsp;
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
     </div>
 </footer>
diff --git a/doc/sample_html/z_7b071bdc2a35fa80___main___py.html b/doc/sample_html/z_7b071bdc2a35fa80___main___py.html
index 810f8305e..4b20354a2 100644
--- a/doc/sample_html/z_7b071bdc2a35fa80___main___py.html
+++ b/doc/sample_html/z_7b071bdc2a35fa80___main___py.html
@@ -1,11 +1,11 @@
 <!DOCTYPE html>
-<html>
+<html lang="en">
 <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>Coverage for cogapp/__main__.py: 0.00%</title>
     <link rel="icon" sizes="32x32" href="favicon_32.png">
     <link rel="stylesheet" href="style.css" type="text/css">
-    <script type="text/javascript" src="coverage_html.js" defer></script>
+    <script src="coverage_html.js" defer></script>
 </head>
 <body class="pyfile">
 <header>
@@ -17,7 +17,7 @@ <h1>
         <aside id="help_panel_wrapper">
             <input id="help_panel_state" type="checkbox">
             <label for="help_panel_state">
-                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts" />
+                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts">
             </label>
             <div id="help_panel">
                 <p class="legend">Shortcuts on this page</p>
@@ -66,18 +66,18 @@ <h2>
             <a id="indexLink" class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
             <a id="nextFileLink" class="nav" href="z_7b071bdc2a35fa80_cogapp_py.html">&#xbb; next</a>
             &nbsp; &nbsp; &nbsp;
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
         <aside class="hidden">
-            <button type="button" class="button_next_chunk" data-shortcut="j"/>
-            <button type="button" class="button_prev_chunk" data-shortcut="k"/>
-            <button type="button" class="button_top_of_page" data-shortcut="0"/>
-            <button type="button" class="button_first_chunk" data-shortcut="1"/>
-            <button type="button" class="button_prev_file" data-shortcut="["/>
-            <button type="button" class="button_next_file" data-shortcut="]"/>
-            <button type="button" class="button_to_index" data-shortcut="u"/>
-            <button type="button" class="button_show_hide_help" data-shortcut="?"/>
+            <button type="button" class="button_next_chunk" data-shortcut="j"></button>
+            <button type="button" class="button_prev_chunk" data-shortcut="k"></button>
+            <button type="button" class="button_top_of_page" data-shortcut="0"></button>
+            <button type="button" class="button_first_chunk" data-shortcut="1"></button>
+            <button type="button" class="button_prev_file" data-shortcut="["></button>
+            <button type="button" class="button_next_file" data-shortcut="]"></button>
+            <button type="button" class="button_to_index" data-shortcut="u"></button>
+            <button type="button" class="button_show_hide_help" data-shortcut="?"></button>
         </aside>
     </div>
 </header>
@@ -93,12 +93,12 @@ <h2>
 <footer>
     <div class="content">
         <p>
-            <a id="prevFileLink" class="nav" href="z_7b071bdc2a35fa80___init___py.html">&#xab; prev</a> &nbsp; &nbsp;
-            <a id="indexLink" class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
-            <a id="nextFileLink" class="nav" href="z_7b071bdc2a35fa80_cogapp_py.html">&#xbb; next</a>
+            <a class="nav" href="z_7b071bdc2a35fa80___init___py.html">&#xab; prev</a> &nbsp; &nbsp;
+            <a class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
+            <a class="nav" href="z_7b071bdc2a35fa80_cogapp_py.html">&#xbb; next</a>
             &nbsp; &nbsp; &nbsp;
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
     </div>
 </footer>
diff --git a/doc/sample_html/z_7b071bdc2a35fa80_cogapp_py.html b/doc/sample_html/z_7b071bdc2a35fa80_cogapp_py.html
index dcbf1ae6f..fbef027b8 100644
--- a/doc/sample_html/z_7b071bdc2a35fa80_cogapp_py.html
+++ b/doc/sample_html/z_7b071bdc2a35fa80_cogapp_py.html
@@ -1,11 +1,11 @@
 <!DOCTYPE html>
-<html>
+<html lang="en">
 <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>Coverage for cogapp/cogapp.py: 46.74%</title>
     <link rel="icon" sizes="32x32" href="favicon_32.png">
     <link rel="stylesheet" href="style.css" type="text/css">
-    <script type="text/javascript" src="coverage_html.js" defer></script>
+    <script src="coverage_html.js" defer></script>
 </head>
 <body class="pyfile">
 <header>
@@ -17,7 +17,7 @@ <h1>
         <aside id="help_panel_wrapper">
             <input id="help_panel_state" type="checkbox">
             <label for="help_panel_state">
-                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts" />
+                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts">
             </label>
             <div id="help_panel">
                 <p class="legend">Shortcuts on this page</p>
@@ -66,18 +66,18 @@ <h2>
             <a id="indexLink" class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
             <a id="nextFileLink" class="nav" href="z_7b071bdc2a35fa80_makefiles_py.html">&#xbb; next</a>
             &nbsp; &nbsp; &nbsp;
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
         <aside class="hidden">
-            <button type="button" class="button_next_chunk" data-shortcut="j"/>
-            <button type="button" class="button_prev_chunk" data-shortcut="k"/>
-            <button type="button" class="button_top_of_page" data-shortcut="0"/>
-            <button type="button" class="button_first_chunk" data-shortcut="1"/>
-            <button type="button" class="button_prev_file" data-shortcut="["/>
-            <button type="button" class="button_next_file" data-shortcut="]"/>
-            <button type="button" class="button_to_index" data-shortcut="u"/>
-            <button type="button" class="button_show_hide_help" data-shortcut="?"/>
+            <button type="button" class="button_next_chunk" data-shortcut="j"></button>
+            <button type="button" class="button_prev_chunk" data-shortcut="k"></button>
+            <button type="button" class="button_top_of_page" data-shortcut="0"></button>
+            <button type="button" class="button_first_chunk" data-shortcut="1"></button>
+            <button type="button" class="button_prev_file" data-shortcut="["></button>
+            <button type="button" class="button_next_file" data-shortcut="]"></button>
+            <button type="button" class="button_to_index" data-shortcut="u"></button>
+            <button type="button" class="button_show_hide_help" data-shortcut="?"></button>
         </aside>
     </div>
 </header>
@@ -907,12 +907,12 @@ <h2>
 <footer>
     <div class="content">
         <p>
-            <a id="prevFileLink" class="nav" href="z_7b071bdc2a35fa80___main___py.html">&#xab; prev</a> &nbsp; &nbsp;
-            <a id="indexLink" class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
-            <a id="nextFileLink" class="nav" href="z_7b071bdc2a35fa80_makefiles_py.html">&#xbb; next</a>
+            <a class="nav" href="z_7b071bdc2a35fa80___main___py.html">&#xab; prev</a> &nbsp; &nbsp;
+            <a class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
+            <a class="nav" href="z_7b071bdc2a35fa80_makefiles_py.html">&#xbb; next</a>
             &nbsp; &nbsp; &nbsp;
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
     </div>
 </footer>
diff --git a/doc/sample_html/z_7b071bdc2a35fa80_makefiles_py.html b/doc/sample_html/z_7b071bdc2a35fa80_makefiles_py.html
index 5e43565e6..4efacbdf7 100644
--- a/doc/sample_html/z_7b071bdc2a35fa80_makefiles_py.html
+++ b/doc/sample_html/z_7b071bdc2a35fa80_makefiles_py.html
@@ -1,11 +1,11 @@
 <!DOCTYPE html>
-<html>
+<html lang="en">
 <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>Coverage for cogapp/makefiles.py: 11.11%</title>
     <link rel="icon" sizes="32x32" href="favicon_32.png">
     <link rel="stylesheet" href="style.css" type="text/css">
-    <script type="text/javascript" src="coverage_html.js" defer></script>
+    <script src="coverage_html.js" defer></script>
 </head>
 <body class="pyfile">
 <header>
@@ -17,7 +17,7 @@ <h1>
         <aside id="help_panel_wrapper">
             <input id="help_panel_state" type="checkbox">
             <label for="help_panel_state">
-                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts" />
+                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts">
             </label>
             <div id="help_panel">
                 <p class="legend">Shortcuts on this page</p>
@@ -66,18 +66,18 @@ <h2>
             <a id="indexLink" class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
             <a id="nextFileLink" class="nav" href="z_7b071bdc2a35fa80_test_cogapp_py.html">&#xbb; next</a>
             &nbsp; &nbsp; &nbsp;
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
         <aside class="hidden">
-            <button type="button" class="button_next_chunk" data-shortcut="j"/>
-            <button type="button" class="button_prev_chunk" data-shortcut="k"/>
-            <button type="button" class="button_top_of_page" data-shortcut="0"/>
-            <button type="button" class="button_first_chunk" data-shortcut="1"/>
-            <button type="button" class="button_prev_file" data-shortcut="["/>
-            <button type="button" class="button_next_file" data-shortcut="]"/>
-            <button type="button" class="button_to_index" data-shortcut="u"/>
-            <button type="button" class="button_show_hide_help" data-shortcut="?"/>
+            <button type="button" class="button_next_chunk" data-shortcut="j"></button>
+            <button type="button" class="button_prev_chunk" data-shortcut="k"></button>
+            <button type="button" class="button_top_of_page" data-shortcut="0"></button>
+            <button type="button" class="button_first_chunk" data-shortcut="1"></button>
+            <button type="button" class="button_prev_file" data-shortcut="["></button>
+            <button type="button" class="button_next_file" data-shortcut="]"></button>
+            <button type="button" class="button_to_index" data-shortcut="u"></button>
+            <button type="button" class="button_show_hide_help" data-shortcut="?"></button>
         </aside>
     </div>
 </header>
@@ -122,12 +122,12 @@ <h2>
 <footer>
     <div class="content">
         <p>
-            <a id="prevFileLink" class="nav" href="z_7b071bdc2a35fa80_cogapp_py.html">&#xab; prev</a> &nbsp; &nbsp;
-            <a id="indexLink" class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
-            <a id="nextFileLink" class="nav" href="z_7b071bdc2a35fa80_test_cogapp_py.html">&#xbb; next</a>
+            <a class="nav" href="z_7b071bdc2a35fa80_cogapp_py.html">&#xab; prev</a> &nbsp; &nbsp;
+            <a class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
+            <a class="nav" href="z_7b071bdc2a35fa80_test_cogapp_py.html">&#xbb; next</a>
             &nbsp; &nbsp; &nbsp;
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
     </div>
 </footer>
diff --git a/doc/sample_html/z_7b071bdc2a35fa80_test_cogapp_py.html b/doc/sample_html/z_7b071bdc2a35fa80_test_cogapp_py.html
index 7be2a4f70..b28701909 100644
--- a/doc/sample_html/z_7b071bdc2a35fa80_test_cogapp_py.html
+++ b/doc/sample_html/z_7b071bdc2a35fa80_test_cogapp_py.html
@@ -1,11 +1,11 @@
 <!DOCTYPE html>
-<html>
+<html lang="en">
 <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>Coverage for cogapp/test_cogapp.py: 29.50%</title>
     <link rel="icon" sizes="32x32" href="favicon_32.png">
     <link rel="stylesheet" href="style.css" type="text/css">
-    <script type="text/javascript" src="coverage_html.js" defer></script>
+    <script src="coverage_html.js" defer></script>
 </head>
 <body class="pyfile">
 <header>
@@ -17,7 +17,7 @@ <h1>
         <aside id="help_panel_wrapper">
             <input id="help_panel_state" type="checkbox">
             <label for="help_panel_state">
-                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts" />
+                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts">
             </label>
             <div id="help_panel">
                 <p class="legend">Shortcuts on this page</p>
@@ -66,18 +66,18 @@ <h2>
             <a id="indexLink" class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
             <a id="nextFileLink" class="nav" href="z_7b071bdc2a35fa80_test_makefiles_py.html">&#xbb; next</a>
             &nbsp; &nbsp; &nbsp;
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
         <aside class="hidden">
-            <button type="button" class="button_next_chunk" data-shortcut="j"/>
-            <button type="button" class="button_prev_chunk" data-shortcut="k"/>
-            <button type="button" class="button_top_of_page" data-shortcut="0"/>
-            <button type="button" class="button_first_chunk" data-shortcut="1"/>
-            <button type="button" class="button_prev_file" data-shortcut="["/>
-            <button type="button" class="button_next_file" data-shortcut="]"/>
-            <button type="button" class="button_to_index" data-shortcut="u"/>
-            <button type="button" class="button_show_hide_help" data-shortcut="?"/>
+            <button type="button" class="button_next_chunk" data-shortcut="j"></button>
+            <button type="button" class="button_prev_chunk" data-shortcut="k"></button>
+            <button type="button" class="button_top_of_page" data-shortcut="0"></button>
+            <button type="button" class="button_first_chunk" data-shortcut="1"></button>
+            <button type="button" class="button_prev_file" data-shortcut="["></button>
+            <button type="button" class="button_next_file" data-shortcut="]"></button>
+            <button type="button" class="button_to_index" data-shortcut="u"></button>
+            <button type="button" class="button_show_hide_help" data-shortcut="?"></button>
         </aside>
     </div>
 </header>
@@ -2742,12 +2742,12 @@ <h2>
 <footer>
     <div class="content">
         <p>
-            <a id="prevFileLink" class="nav" href="z_7b071bdc2a35fa80_makefiles_py.html">&#xab; prev</a> &nbsp; &nbsp;
-            <a id="indexLink" class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
-            <a id="nextFileLink" class="nav" href="z_7b071bdc2a35fa80_test_makefiles_py.html">&#xbb; next</a>
+            <a class="nav" href="z_7b071bdc2a35fa80_makefiles_py.html">&#xab; prev</a> &nbsp; &nbsp;
+            <a class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
+            <a class="nav" href="z_7b071bdc2a35fa80_test_makefiles_py.html">&#xbb; next</a>
             &nbsp; &nbsp; &nbsp;
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
     </div>
 </footer>
diff --git a/doc/sample_html/z_7b071bdc2a35fa80_test_makefiles_py.html b/doc/sample_html/z_7b071bdc2a35fa80_test_makefiles_py.html
index 5e92e3102..f1a0d8d8a 100644
--- a/doc/sample_html/z_7b071bdc2a35fa80_test_makefiles_py.html
+++ b/doc/sample_html/z_7b071bdc2a35fa80_test_makefiles_py.html
@@ -1,11 +1,11 @@
 <!DOCTYPE html>
-<html>
+<html lang="en">
 <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>Coverage for cogapp/test_makefiles.py: 22.97%</title>
     <link rel="icon" sizes="32x32" href="favicon_32.png">
     <link rel="stylesheet" href="style.css" type="text/css">
-    <script type="text/javascript" src="coverage_html.js" defer></script>
+    <script src="coverage_html.js" defer></script>
 </head>
 <body class="pyfile">
 <header>
@@ -17,7 +17,7 @@ <h1>
         <aside id="help_panel_wrapper">
             <input id="help_panel_state" type="checkbox">
             <label for="help_panel_state">
-                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts" />
+                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts">
             </label>
             <div id="help_panel">
                 <p class="legend">Shortcuts on this page</p>
@@ -66,18 +66,18 @@ <h2>
             <a id="indexLink" class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
             <a id="nextFileLink" class="nav" href="z_7b071bdc2a35fa80_test_whiteutils_py.html">&#xbb; next</a>
             &nbsp; &nbsp; &nbsp;
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
         <aside class="hidden">
-            <button type="button" class="button_next_chunk" data-shortcut="j"/>
-            <button type="button" class="button_prev_chunk" data-shortcut="k"/>
-            <button type="button" class="button_top_of_page" data-shortcut="0"/>
-            <button type="button" class="button_first_chunk" data-shortcut="1"/>
-            <button type="button" class="button_prev_file" data-shortcut="["/>
-            <button type="button" class="button_next_file" data-shortcut="]"/>
-            <button type="button" class="button_to_index" data-shortcut="u"/>
-            <button type="button" class="button_show_hide_help" data-shortcut="?"/>
+            <button type="button" class="button_next_chunk" data-shortcut="j"></button>
+            <button type="button" class="button_prev_chunk" data-shortcut="k"></button>
+            <button type="button" class="button_top_of_page" data-shortcut="0"></button>
+            <button type="button" class="button_first_chunk" data-shortcut="1"></button>
+            <button type="button" class="button_prev_file" data-shortcut="["></button>
+            <button type="button" class="button_next_file" data-shortcut="]"></button>
+            <button type="button" class="button_to_index" data-shortcut="u"></button>
+            <button type="button" class="button_show_hide_help" data-shortcut="?"></button>
         </aside>
     </div>
 </header>
@@ -201,12 +201,12 @@ <h2>
 <footer>
     <div class="content">
         <p>
-            <a id="prevFileLink" class="nav" href="z_7b071bdc2a35fa80_test_cogapp_py.html">&#xab; prev</a> &nbsp; &nbsp;
-            <a id="indexLink" class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
-            <a id="nextFileLink" class="nav" href="z_7b071bdc2a35fa80_test_whiteutils_py.html">&#xbb; next</a>
+            <a class="nav" href="z_7b071bdc2a35fa80_test_cogapp_py.html">&#xab; prev</a> &nbsp; &nbsp;
+            <a class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
+            <a class="nav" href="z_7b071bdc2a35fa80_test_whiteutils_py.html">&#xbb; next</a>
             &nbsp; &nbsp; &nbsp;
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
     </div>
 </footer>
diff --git a/doc/sample_html/z_7b071bdc2a35fa80_test_whiteutils_py.html b/doc/sample_html/z_7b071bdc2a35fa80_test_whiteutils_py.html
index 660043b4b..94899ce53 100644
--- a/doc/sample_html/z_7b071bdc2a35fa80_test_whiteutils_py.html
+++ b/doc/sample_html/z_7b071bdc2a35fa80_test_whiteutils_py.html
@@ -1,11 +1,11 @@
 <!DOCTYPE html>
-<html>
+<html lang="en">
 <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>Coverage for cogapp/test_whiteutils.py: 26.47%</title>
     <link rel="icon" sizes="32x32" href="favicon_32.png">
     <link rel="stylesheet" href="style.css" type="text/css">
-    <script type="text/javascript" src="coverage_html.js" defer></script>
+    <script src="coverage_html.js" defer></script>
 </head>
 <body class="pyfile">
 <header>
@@ -17,7 +17,7 @@ <h1>
         <aside id="help_panel_wrapper">
             <input id="help_panel_state" type="checkbox">
             <label for="help_panel_state">
-                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts" />
+                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts">
             </label>
             <div id="help_panel">
                 <p class="legend">Shortcuts on this page</p>
@@ -66,18 +66,18 @@ <h2>
             <a id="indexLink" class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
             <a id="nextFileLink" class="nav" href="z_7b071bdc2a35fa80_utils_py.html">&#xbb; next</a>
             &nbsp; &nbsp; &nbsp;
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
         <aside class="hidden">
-            <button type="button" class="button_next_chunk" data-shortcut="j"/>
-            <button type="button" class="button_prev_chunk" data-shortcut="k"/>
-            <button type="button" class="button_top_of_page" data-shortcut="0"/>
-            <button type="button" class="button_first_chunk" data-shortcut="1"/>
-            <button type="button" class="button_prev_file" data-shortcut="["/>
-            <button type="button" class="button_next_file" data-shortcut="]"/>
-            <button type="button" class="button_to_index" data-shortcut="u"/>
-            <button type="button" class="button_show_hide_help" data-shortcut="?"/>
+            <button type="button" class="button_next_chunk" data-shortcut="j"></button>
+            <button type="button" class="button_prev_chunk" data-shortcut="k"></button>
+            <button type="button" class="button_top_of_page" data-shortcut="0"></button>
+            <button type="button" class="button_first_chunk" data-shortcut="1"></button>
+            <button type="button" class="button_prev_file" data-shortcut="["></button>
+            <button type="button" class="button_next_file" data-shortcut="]"></button>
+            <button type="button" class="button_to_index" data-shortcut="u"></button>
+            <button type="button" class="button_show_hide_help" data-shortcut="?"></button>
         </aside>
     </div>
 </header>
@@ -183,12 +183,12 @@ <h2>
 <footer>
     <div class="content">
         <p>
-            <a id="prevFileLink" class="nav" href="z_7b071bdc2a35fa80_test_makefiles_py.html">&#xab; prev</a> &nbsp; &nbsp;
-            <a id="indexLink" class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
-            <a id="nextFileLink" class="nav" href="z_7b071bdc2a35fa80_utils_py.html">&#xbb; next</a>
+            <a class="nav" href="z_7b071bdc2a35fa80_test_makefiles_py.html">&#xab; prev</a> &nbsp; &nbsp;
+            <a class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
+            <a class="nav" href="z_7b071bdc2a35fa80_utils_py.html">&#xbb; next</a>
             &nbsp; &nbsp; &nbsp;
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
     </div>
 </footer>
diff --git a/doc/sample_html/z_7b071bdc2a35fa80_utils_py.html b/doc/sample_html/z_7b071bdc2a35fa80_utils_py.html
index b8a0c974d..36a49afc0 100644
--- a/doc/sample_html/z_7b071bdc2a35fa80_utils_py.html
+++ b/doc/sample_html/z_7b071bdc2a35fa80_utils_py.html
@@ -1,11 +1,11 @@
 <!DOCTYPE html>
-<html>
+<html lang="en">
 <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>Coverage for cogapp/utils.py: 76.74%</title>
     <link rel="icon" sizes="32x32" href="favicon_32.png">
     <link rel="stylesheet" href="style.css" type="text/css">
-    <script type="text/javascript" src="coverage_html.js" defer></script>
+    <script src="coverage_html.js" defer></script>
 </head>
 <body class="pyfile">
 <header>
@@ -17,7 +17,7 @@ <h1>
         <aside id="help_panel_wrapper">
             <input id="help_panel_state" type="checkbox">
             <label for="help_panel_state">
-                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts" />
+                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts">
             </label>
             <div id="help_panel">
                 <p class="legend">Shortcuts on this page</p>
@@ -66,18 +66,18 @@ <h2>
             <a id="indexLink" class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
             <a id="nextFileLink" class="nav" href="z_7b071bdc2a35fa80_whiteutils_py.html">&#xbb; next</a>
             &nbsp; &nbsp; &nbsp;
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
         <aside class="hidden">
-            <button type="button" class="button_next_chunk" data-shortcut="j"/>
-            <button type="button" class="button_prev_chunk" data-shortcut="k"/>
-            <button type="button" class="button_top_of_page" data-shortcut="0"/>
-            <button type="button" class="button_first_chunk" data-shortcut="1"/>
-            <button type="button" class="button_prev_file" data-shortcut="["/>
-            <button type="button" class="button_next_file" data-shortcut="]"/>
-            <button type="button" class="button_to_index" data-shortcut="u"/>
-            <button type="button" class="button_show_hide_help" data-shortcut="?"/>
+            <button type="button" class="button_next_chunk" data-shortcut="j"></button>
+            <button type="button" class="button_prev_chunk" data-shortcut="k"></button>
+            <button type="button" class="button_top_of_page" data-shortcut="0"></button>
+            <button type="button" class="button_first_chunk" data-shortcut="1"></button>
+            <button type="button" class="button_prev_file" data-shortcut="["></button>
+            <button type="button" class="button_next_file" data-shortcut="]"></button>
+            <button type="button" class="button_to_index" data-shortcut="u"></button>
+            <button type="button" class="button_show_hide_help" data-shortcut="?"></button>
         </aside>
     </div>
 </header>
@@ -157,12 +157,12 @@ <h2>
 <footer>
     <div class="content">
         <p>
-            <a id="prevFileLink" class="nav" href="z_7b071bdc2a35fa80_test_whiteutils_py.html">&#xab; prev</a> &nbsp; &nbsp;
-            <a id="indexLink" class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
-            <a id="nextFileLink" class="nav" href="z_7b071bdc2a35fa80_whiteutils_py.html">&#xbb; next</a>
+            <a class="nav" href="z_7b071bdc2a35fa80_test_whiteutils_py.html">&#xab; prev</a> &nbsp; &nbsp;
+            <a class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
+            <a class="nav" href="z_7b071bdc2a35fa80_whiteutils_py.html">&#xbb; next</a>
             &nbsp; &nbsp; &nbsp;
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
     </div>
 </footer>
diff --git a/doc/sample_html/z_7b071bdc2a35fa80_whiteutils_py.html b/doc/sample_html/z_7b071bdc2a35fa80_whiteutils_py.html
index d0994d144..d53030223 100644
--- a/doc/sample_html/z_7b071bdc2a35fa80_whiteutils_py.html
+++ b/doc/sample_html/z_7b071bdc2a35fa80_whiteutils_py.html
@@ -1,11 +1,11 @@
 <!DOCTYPE html>
-<html>
+<html lang="en">
 <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>Coverage for cogapp/whiteutils.py: 88.31%</title>
     <link rel="icon" sizes="32x32" href="favicon_32.png">
     <link rel="stylesheet" href="style.css" type="text/css">
-    <script type="text/javascript" src="coverage_html.js" defer></script>
+    <script src="coverage_html.js" defer></script>
 </head>
 <body class="pyfile">
 <header>
@@ -17,7 +17,7 @@ <h1>
         <aside id="help_panel_wrapper">
             <input id="help_panel_state" type="checkbox">
             <label for="help_panel_state">
-                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts" />
+                <img id="keyboard_icon" src="keybd_closed.png" alt="Show/hide keyboard shortcuts">
             </label>
             <div id="help_panel">
                 <p class="legend">Shortcuts on this page</p>
@@ -66,18 +66,18 @@ <h2>
             <a id="indexLink" class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
             <a id="nextFileLink" class="nav" href="index.html">&#xbb; next</a>
             &nbsp; &nbsp; &nbsp;
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
         <aside class="hidden">
-            <button type="button" class="button_next_chunk" data-shortcut="j"/>
-            <button type="button" class="button_prev_chunk" data-shortcut="k"/>
-            <button type="button" class="button_top_of_page" data-shortcut="0"/>
-            <button type="button" class="button_first_chunk" data-shortcut="1"/>
-            <button type="button" class="button_prev_file" data-shortcut="["/>
-            <button type="button" class="button_next_file" data-shortcut="]"/>
-            <button type="button" class="button_to_index" data-shortcut="u"/>
-            <button type="button" class="button_show_hide_help" data-shortcut="?"/>
+            <button type="button" class="button_next_chunk" data-shortcut="j"></button>
+            <button type="button" class="button_prev_chunk" data-shortcut="k"></button>
+            <button type="button" class="button_top_of_page" data-shortcut="0"></button>
+            <button type="button" class="button_first_chunk" data-shortcut="1"></button>
+            <button type="button" class="button_prev_file" data-shortcut="["></button>
+            <button type="button" class="button_next_file" data-shortcut="]"></button>
+            <button type="button" class="button_to_index" data-shortcut="u"></button>
+            <button type="button" class="button_show_hide_help" data-shortcut="?"></button>
         </aside>
     </div>
 </header>
@@ -153,12 +153,12 @@ <h2>
 <footer>
     <div class="content">
         <p>
-            <a id="prevFileLink" class="nav" href="z_7b071bdc2a35fa80_utils_py.html">&#xab; prev</a> &nbsp; &nbsp;
-            <a id="indexLink" class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
-            <a id="nextFileLink" class="nav" href="index.html">&#xbb; next</a>
+            <a class="nav" href="z_7b071bdc2a35fa80_utils_py.html">&#xab; prev</a> &nbsp; &nbsp;
+            <a class="nav" href="index.html">&Hat; index</a> &nbsp; &nbsp;
+            <a class="nav" href="index.html">&#xbb; next</a>
             &nbsp; &nbsp; &nbsp;
-            <a class="nav" href="https://coverage.readthedocs.io/en/7.4.5a0.dev1">coverage.py v7.4.5a0.dev1</a>,
-            created at 2024-04-06 12:54 -0400
+            <a class="nav" href="https://coverage.readthedocs.io/en/7.5.0">coverage.py v7.5.0</a>,
+            created at 2024-04-23 13:00 -0400
         </p>
     </div>
 </footer>