build index.html for all winners

Updated manifest as per recent file changes.

Updated winner `.winner.json` to reflect the manifest changes.

Added [bin/all_run.sh](bin/all_run.sh) tool to run a command over
all winning entries.

These tools had slight improvements in the help usage message:

* bin/gen-author.sh VERSION="1.3.1 2024-01-16"
* bin/gen-inventory.sh VERSION="1.0.1 2024-01-16"
* bin/pandoc_wrapper.sh VERSION="1.3.1 2024-01-16"
* bin/subst.default.sh VERSION="1.1.1 2024-01-16"
* bin/subst.winner-index.sh VERSION="1.1.1 2024-01-16"

The `bin/readme2index.sh` tool was improved so that
if the `index.html` file exists and the tool forms
the exact same content, then the file `index.html`
file is NOT touched.

* bin/readme2index.sh VERSION="1.1 2024-01-16"

We used the following command to generate `index.html` files
for all winning entries:

```sh
bin/all_run.sh -v 3 bin/readme2index.sh
```

NOTE: We have not (yet) built HTML files above the winner directory
level (e.g., no year level nor top level HTML), nor have be built
non-index HTML files for winners.

NOTE: By default we are running `pandoc(1)` with:

```
--fail-if-warnings=true
```

This means that any problems with markdown to HTML
generates an error.  This is done to be sure that
the HTML conversion is clean.

We had to fix the following `README.md` files:

* `2000/rince/README.md`

The reference [^2] was never used.  We made a guess that [^2] applies
to the same spot as [^1].  Perhaps there is a better spot where
[^2] applies?

NOTE: For every reference, there MUST be some place where that
reference is used.

* 2012/vik/README.md

The string "$...$" is assumed to be a TeX encoded string.

NOTE: Every "$..$" needs to be backslashed as in "\$..\$".

* 2018/burton1/README.md

The reference [2] was duplicated.  We changed the
second [2] to [3].

NOTE: Every reference needs to have a unique number.

* 2020/carlini/README.md

The string "$...$" is assumed to be a TeX encoded string.

NOTE: Every "$..$" needs to be backslashed as in "\$..\$".

We also found 2 errors in the `author/author_handle.json` file set:

* author/Anonymous_2001.json

The `author/Anonymous_2001.json` file was missing.

* author/Jari_Arkko.json

The winner ID for `1989_jar.1` had a typo.
This commit is contained in:
Landon Curt Noll committed 2024-01-17 00:32:39 -08:00
1 parent 893cd915b6
commit c1466f5165
350 files changed
+95242 -4217

No files matched your search

+404 -13
View File
@@ -1,4 +1,6 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<!-- START: two lines up starts content from: inc/top.default.html -->
<!-- -->
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<!-- !!! DO NOT MODIFY THIS FILE - This file is generated by a tool !!! -->
@@ -6,27 +8,416 @@
<!-- !!! DO NOT MODIFY THIS FILE - This file is generated by a tool !!! -->
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<!-- -->
<!-- file: 1998/banks/index.html created by: fake.gen_index.sh version: 1.0.5 2023-10-31 -->
<html lang="en">
<!-- END: this line ends content from: inc/top.default.html -->
<!-- -->
<!-- This file was formed by the tool: bin/readme2index.sh version: 1.1 2024-01-16 -->
<!-- -->
<!-- START: this line starts content from: inc/head.default.html -->
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>1998 banks</title>
<meta name="description" content="IOCCC year: 1998 IOCCC winner: banks winner index page">
<meta name="keywords" content="IOCCC,1998,banks,winner index page">
<link rel="stylesheet" href="/temp-test-ioccc/ioccc.css">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
<title>1998/banks</title>
<meta name="description" content="1998 IOCCC winner banks">
<meta name="keywords" content="IOCCC, 1998, IOCCC 1998, IOCCC winner, banks">
</head>
<!-- END: this line ends content from: inc/head.default.html -->
<!-- START: this line starts content from: inc/body.default.html -->
<body>
<h1>1998 banks</h1>
<!-- END: this line ends content from: inc/body.default.html -->
<!-- START: this line starts content from: inc/header.default.html -->
<p>XXX - fake content until readme2index is working - XXX</p>
<div class="header">
<img src="/temp-test-ioccc/png/ioccc.png" alt="IOCCC image by Matt Zucker" width=300 height=110>
<h1>The International Obfuscated C Code Contest</h1>
<h2>1998/banks</h2>
</div>
<hr style="width:50%;text-align:left;margin-left:0">
<!-- END: this line ends content from: inc/header.default.html -->
<!-- START: this line starts content from: inc/topnav.first.html -->
<!-- Start Nu Html Checker -->
<p><a href="https://validator.w3.org/nu/?doc=https%3A%2F%2Fioccc-src.github.io%2Ftemp-test-ioccc%2F1998%2Fbanks%2Findex.html">Nu Html check https://ioccc-src.github.io/temp-test-ioccc/1998/banks/index.html</a></p>
<!-- End Nu Html Checker -->
<div class="topnav">
<a class="Left Disabled" href="#">first entry</a>
<a class="Left" href="../index.html">&uarr; 1998 &uarr;</a>
<a class="Left" href="../bas1/index.html">bas1 &rarr;</a>
<a class="Right" href="#inventory">Inventory</a>
</div>
<!-- END: this line ends content from: inc/topnav.first.html -->
<!-- START: this line starts content from: inc/begin-row.default.html -->
<div class="row">
<!-- END: this line ends content from: inc/begin-row.default.html -->
<!-- START: this line starts content from: inc/begin-leftcolumn.default.html -->
<div class="leftcolumn">
<!-- END: this line ends content from: inc/begin-leftcolumn.default.html -->
<!-- START: this line starts content from: inc/sidenav.default.html -->
<div class="sidenav">
<a href="#content">Jump to contents</a>
</div>
<hr>
<div class="sidenav">
<a href="/temp-test-ioccc/index.html">IOCCC Home</a>
<a href="/temp-test-ioccc/years.html">Winning Entries</a>
<a href="/temp-test-ioccc/winners.html">People who have won</a>
</div>
<hr>
<div class="sidenav">
<a href="/temp-test-ioccc/news.html">IOCCC News</a>
<a href="/temp-test-ioccc/faq.html#submit">How to enter the IOCCC</a>
<a href="/temp-test-ioccc/faq.html">FAQ</a>
</div>
<hr>
<div class="sidenav">
<a href="/temp-test-ioccc/bugs.html">Bugs &amp; (mis)features</a>
<a href="/temp-test-ioccc/faq.html#fix_a_winner">Fixing IOCCC winners</a>
<a href="/temp-test-ioccc/faq.html#fix_web_site">Fixing the web site</a>
<a href="/temp-test-ioccc/faq.html#fix_author">Fixing winner info</a>
<a href="/temp-test-ioccc/thanks-for-help.html">Thanks for the help</a>
</div>
<hr>
<div class="sidenav">
<a href="/temp-test-ioccc/judges.html">The IOCCC Judges</a>
<a href="/temp-test-ioccc/contact.html">Contacting the IOCCC</a>
</div>
<hr>
<div class="sidenav">
<a href="#top">Jump to top</a>
</div>
<!-- END: this line ends content from: inc/sidenav.default.html -->
<!-- START: this line starts content from: inc/end-leftcolumn.default.html -->
</div>
<!-- END: this line ends content from: inc/end-leftcolumn.default.html -->
<!-- START: this line starts content from: inc/begin-rightcolumn.default.html -->
<div class="rightcolumn">
<!-- END: this line ends content from: inc/begin-rightcolumn.default.html -->
<!-- START: this line starts content from: inc/before-content.default.html -->
<a name="content"></a>
<!-- END: this line ends content from: inc/before-content.default.html -->
<!-- START: this line starts content generated by: bin/gen-author.sh -->
<p><a name="author"><strong>Author:</strong></a> <br><br>Name: <a
href="/temp-test-ioccc/winners.html#Carl_Banks">Carl Banks</a><br>
Location: <a href="/temp-test-ioccc/location.html#US">US</a></p>
<!-- END: next line ends content generated by: bin/gen-author.sh -->
<h2 id="to-build">To build:</h2>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> all</span></code></pre></div>
<p>You may redefine all the keys and the time step with predefined
macros. The author provided the following able:</p>
<pre><code>Control Description Default Key
------- ------------------------- -----------
IT Increase throttle XK_Page_Up
DT Decrease throttle XK_Page_Down
FD Move stick forward XK_Up
BK Move stick back XK_Down
LT Move stick left XK_Left
RT Move stick right XK_Right
CS Center stick XK_Enter</code></pre>
<p>There is another macro, <code>dt</code>, which is the time step. See
some important points on this in the author’s comments in the <a
href="#alternate-build-instructions">Alternate Build Instructions</a>
section.</p>
<p>If however you wish to change the above controls, see the header file
<a href="keysym.h">keysym.h</a> for the definitions of other characters
that you might wish to use. The name of the macro in the header file is
what you need to set the macros to, depending on what controls you wish
to redefine. For instance, to set the throttle up and down to
<code>u</code> and <code>d</code>:</p>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> clobber IT=XK_u DT=XK_d all</span></code></pre></div>
<p>because in the header file you can see that <code>XK_u</code>
corresponds to <code>u</code> and <code>XK_d</code> corresponds to
<code>d</code>:</p>
<div class="sourceCode" id="cb4"><pre class="sourceCode c"><code class="sourceCode c"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="pp">#define XK_d </span><span class="bn">0x0064</span><span class="pp"> </span><span class="co">/* U+0064 LATIN SMALL LETTER D */</span></span>
<span id="cb4-2"><a href="#cb4-2" aria-hidden="true" tabindex="-1"></a><span class="pp">#define XK_u </span><span class="bn">0x0075</span><span class="pp"> </span><span class="co">/* U+0075 LATIN SMALL LETTER U */</span></span></code></pre></div>
<p>Note that the <a href="keysym.h">keysym.h</a> file is not complete
from X11; it’s just the more likely candidates (and some that are
probably unlikely :-) ).</p>
<p>The upper case letters would be <code>XK_U</code> and
<code>XK_D</code> and you can search the header file for ‘LATIN CAPITAL
D’, for example.</p>
<p>For those who do not have a Page Up or Page Down key, see <a
href="#alternate-code">alternate code</a> below. The difference from the
alt build and the original entry is that the page up and page down keys
are defined to a default but they are hard coded as doing otherwise
would necessarily complicate the build instructions. Since you can use
the original entry to redefine these this is not a problem and is purely
a convenience .. if only for those who are okay with the preselected
alternative keys.</p>
<h2 id="to-use">To use:</h2>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="fu">cat</span> horizon.sc pittsburgh.sc <span class="kw">|</span> <span class="ex">./banks</span></span></code></pre></div>
<p>See the author’s remarks in <a href="#scenery">scenery</a> for more
details on the scenery files.</p>
<h2 id="try">Try:</h2>
<p>For a fun time after running the above command, hold down the up
arrow and left arrow for about 10 seconds and see what happens. Or, if
you wish to really use it in a non-silly way, see the author’s remarks
for the real controls. Perhaps you can regain control?</p>
<h2 id="alternate-code">Alternate code:</h2>
<p>If you do not have access to a page up or page down key, for instance
you’re using a Mac, you can use the alt code (though it actually uses
the same code) that will redefine the keys to increase throttle and
decrease throttle. This same method can be used with the original code
but this sets up predefined keys in place of Page Up and Page Down.</p>
<p>The keys were somewhat arbitrarily selected but it was decided to
make them both on the left side of a QWERTY keyboard as one might have a
harder time using the arrows at the same time as typing on the right
side.</p>
<h3 id="alternate-build">Alternate build:</h3>
<p>As the Makefile allows you to configure the keys to use you may
redefine the keys but with the alt build you cannot, as described
earlier, redefine the page up and page down replacement keys. If you
want to do that you should use the original entry as described in the to
build section above.</p>
<p>In the alt build it is <code>f</code> and <code>d</code> respectively
as these are letters on the left side of the keyboard which is easier to
use if one is using the right side for movement. These are hard coded,
as noted.</p>
<p>To use the default settings for the alternate build:</p>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> alt</span></code></pre></div>
<p>You may change the other keys as described in the build instructions,
above, but this alt code can be seen as an alternative for those who
don’t have or don’t want to use page up and page down.</p>
<h3 id="alternate-use">Alternate use:</h3>
<p>Use <code>banks.alt</code> as you would <code>banks</code> but for
use the different keys as configured at compilation.</p>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>What can we say? It’s a flight sim done in 1536 bytes of real code.
This one is a real marvel. When people say the size limits are too
tight, well, we can just point them at this one. This program really
pushes the envelope!</p>
<p>The provided Makefile should work; you will need an X-ish system, and
a <code>select(2)</code> system call. More on building in the author
remarks.</p>
<p>Carl Banks linked to (on his old website) an interesting article
about this entry, a flight simulator in just 1536 bytes, which can be
found at <a
href="https://web.archive.org/web/20040201120708/http://www.idg.co.nz/magazine/pcworld/oct99/code.htm"
class="uri">https://web.archive.org/web/20040201120708/http://www.idg.co.nz/magazine/pcworld/oct99/code.htm</a>.</p>
<h2 id="authors-remarks">Author’s remarks:</h2>
<p>You have just stepped out of the real world and into the virtual. You
are now sitting in the cockpit of a Piper Cherokee airplane, heading
north, flying 1000 feet above ground level.</p>
<p>Use the keyboard to fly the airplane. The arrow keys represent the
control stick. Press the Up Arrow key to push the stick forward. Press
the left arrow key to move the stick left, and so on. Press Enter to
re-center the stick. Use Page Up and Page Down to increase and decrease
the throttle, respectively. (The rudder is automatically coordinated
with the turn rate, so rudder pedals are not represented.)</p>
<p>On your display, you will see on the bottom left corner three
instruments. The first is the airspeed indicator; it tells you how fast
you’re going in knots. The second is the heading indicator, or compass.
0 is north, 90 is east, 180 is south, 270 is west. The third instrument
is the altimeter, which measures your height above ground level in
feet.</p>
<h3 id="features">Features</h3>
<ul>
<li><p>Simulator models a <a
href="https://en.wikipedia.org/wiki/Piper_PA-28_Cherokee">Piper
Cherokee</a>, which is a light, single-engine propeller driven
airplane.</p></li>
<li><p>The airplane is modeled as a six degree-of-freedom rigid body,
accurately reflecting its dynamics (for normal flight conditions, at
least).</p></li>
<li><p>Fly through a virtual 3D world, while sitting at your X
console.</p></li>
<li><p>Loadable scenery files.</p></li>
<li><p>Head-up display contains three instruments: a true airspeed
indicator, a heading indicator (compass), and an altimeter.</p></li>
<li><p>Flight controls may be mapped to any keys at compile time by
redefining the macros in the Makefile. Nice if your keyboard doesn’t
have arrow keys. (Or if you still use vi. :-)</p></li>
<li><p>Time step size can be set at compile time. This is useful to
reduce flicker on network X connections. (But be careful: step sizes
longer than about 0.03 seconds tend to have numerical stability
problems.)</p></li>
<li><p>Airplane never stalls!</p></li>
<li><p>Airplane never runs out of fuel!</p></li>
<li><p>Fly underground!</p></li>
<li><p>Fly through buildings!</p></li>
</ul>
<h3 id="scenery">Scenery</h3>
<p>Each of the <code>*.sc</code> files is a scenery file. The simulator
program reads in the scenery from standard input on startup. You may
input more than one scenery file, as long as there are less than 1000
total lines of input.</p>
<p>Here is a brief description of the scenery files:</p>
<ul>
<li><p><a href="horizon.sc">horizon.sc</a></p>
<p>A horizon, nothing more. You will probably always want to input this
piece of scenery.</p></li>
<li><p><a href="mountains.sc">mountains.sc</a></p>
<p>An alternate horizon; a little more mountainous.</p></li>
<li><p><a href="%5Bpittsburgh.sc%5D">pittsburgh.sc</a></p>
<p>Scenery of downtown Pittsburgh. The downtown area is initially
located to your right.</p></li>
<li><p><a href="bb.sc">bb.sc</a></p>
<p>Simple obstacle course. Try to fly over the buildings and under the
bridges.</p></li>
<li><p><a href="pyramids.sc">pyramids.sc</a></p>
<p>Fly over the tombs of the ancient Pharaohs, in this (fictitious)
Egyptian landscape.</p></li>
<li><p><a href="river.sc">river.sc</a></p>
<p>Follow a flowing river from the sky.</p></li>
</ul>
<p>A few examples of how to input scenery:</p>
<div class="sourceCode" id="cb7"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a><span class="fu">cat</span> horizon.sc pittsburgh.sc <span class="kw">|</span> <span class="ex">./banks</span></span>
<span id="cb7-2"><a href="#cb7-2" aria-hidden="true" tabindex="-1"></a><span class="fu">cat</span> mountains.sc bb.sc <span class="kw">|</span> <span class="ex">./banks</span></span>
<span id="cb7-3"><a href="#cb7-3" aria-hidden="true" tabindex="-1"></a><span class="fu">cat</span> mountains.sc river.sc pyramids.sc <span class="kw">|</span> <span class="ex">./banks</span></span></code></pre></div>
<p>You can simulate flying through a cloud bank as well:</p>
<div class="sourceCode" id="cb8"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./banks</span> <span class="op">&lt;</span> /dev/null</span></code></pre></div>
<p>You will usually want at least a horizon, though.</p>
<p>The format of scenery files is simple, by the way. They’re just a
list of 3D coordinates, and the simulator simply draws line segments
from point to point as listed in the scenery file. <code>0 0 0</code> is
used to end a series of consecutive line segments. Note that in the
coordinate system used, <em>the third coordinate represents
<strong>altitude</strong> in a negative sense: negative numbers are
positive altitudes</em>.</p>
<p>I’m sure you’ll be making your own scenery files very soon!!!</p>
<h3 id="alternate-build-instructions">Alternate Build Instructions</h3>
<p>Several options must be passed to the compiler to make the build
work. The provided <a href="Makefile">Makefile</a> has the appropriate
options set to default values. Use this section if you want to compile
with different options.</p>
<p>To map a key to a control, you must pass an option to the compiler in
the format <code>-Dcontrol=key</code> or if you use the Makefile you can
do <code>make control=key</code>.</p>
<p>The possible controls you can map are described in the table
below:</p>
<pre><code>Control Description Default Key
------- ------------------------- -----------
IT Increase throttle XK_Page_Up
DT Decrease throttle XK_Page_Down
FD Move stick forward XK_Up
BK Move stick back XK_Down
LT Move stick left XK_Left
RT Move stick right XK_Right
CS Center stick XK_Enter</code></pre>
<p>Values for the possible keys can be found in the X Windows header
file <code>&lt;X11/keysym.h&gt;</code>. This file is most likely a
cross-reference to another header,
<code>&lt;X11/keysymdef.h&gt;</code>.</p>
<p>For example, to map Center Stick to the space-bar, the compile option
would be <code>-DCS=XK_space</code> or
<code>make CS=XK_space</code>.</p>
<p>To set the time step size, you must pass the following option to the
compiler: <code>-Ddt=duration</code>, where <code>dt</code> is literal,
and where <code>duration</code> is the time in seconds you want the time
step to be. Alternatively, if you use the provided Makefile, you may
just do <code>make dt=time</code>.</p>
<p>Two things to keep in mind when selecting a time step. Time steps
that are too large (more than about <code>0.03</code>) will cause
numerical stability problems and should be avoided. Setting the time
step to be smaller than your clock resolution will slow down the
simulator, because the system pauses for more time than the simulator
expects.</p>
<p>The best advice is to set time step size to your system timer
resolution. Try a longer period if you’re getting too much flicker.</p>
<h2 id="copyright-and-cc-by-sa-4.0-license">Copyright and CC BY-SA 4.0
License:</h2>
<p>This file is Copyright (c) 2023 by Landon Curt Noll. All Rights
Reserved. You are free to share and adapt this file under the terms of
this license:</p>
<pre><code>Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)</code></pre>
<p>For more information, see:
https://creativecommons.org/licenses/by-sa/4.0/</p>
<!-- START: this line starts content generated by: bin/gen-inventory.sh -->
<h1 id="inventory-for-1998banks"><a name="inventory"></a>Inventory for
1998/banks</h1>
<h2 id="primary-files">Primary files</h2>
<ul>
<li><a href="index.html">index.html</a> - winner home page</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1998/banks/banks.c">banks.c</a>
- winning source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1998/banks/Makefile">Makefile</a>
- winner Makefile</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1998/banks/banks.orig.c">banks.orig.c</a>
- original source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1998/banks/keysym.h">keysym.h</a>
- included header file</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1998/banks/bb.sc">bb.sc</a>
- scenery file</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1998/banks/horizon.sc">horizon.sc</a>
- scenery file</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1998/banks/mountains.sc">mountains.sc</a>
- scenery file</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1998/banks/pittsburgh.sc">pittsburgh.sc</a>
- scenery file</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1998/banks/pyramids.sc">pyramids.sc</a>
- scenery file</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1998/banks/river.sc">river.sc</a>
- scenery file</li>
<li><a href="1998_banks.tar.bz2">1998_banks.tar.bz2</a> - download
winning source</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1998/banks/.gitignore">.gitignore</a>
- list of files that should not be committed under git</li>
<li><a href=".path">.path</a> - directory path from top directory</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1998/banks/.winner.json">.winner.json</a>
- description of winner in JSON</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1998/banks/README.md">README.md</a>
- markdown source for index.html</li>
</ul>
<!-- END: next line ends content generated by: bin/gen-inventory.sh -->
<!-- START: this line starts content from: inc/after-content.default.html -->
<!-- END: this line ends content from: inc/after-content.default.html -->
<!-- START: this line starts content from: inc/end-rightcolumn.default.html -->
</div>
<!-- END: this line ends content from: inc/end-rightcolumn.default.html -->
<!-- START: this line starts content from: inc/end-row.default.html -->
</div>
<!-- END: this line ends content from: inc/end-row.default.html -->
<!-- START: this line starts content from: inc/footer.default.html -->
<div class="footer">
<hr>
<h2>Coda</h2>
<p><a href="https://validator.w3.org/nu/?doc=https%3A%2F%2Fioccc-src.github.io%2Ftemp-test-ioccc%2F1998%2Fbanks%2Findex.html">Nu HTML check this web page</a></p>
<p><a href="#top">Jump to top</a> <a href="#content">Jump to Content</a> <a href="#inventory">Jump to Inventory</a></p>
</div>
<!-- END: this line ends content from: inc/footer.default.html -->
<!-- START: this line starts content from: inc/bottom.default.html -->
</body>
</html>
<!-- END: this line ends content from: inc/bottom.default.html -->