release winning entries of IOCCC28 under the year 2024
Congratulations to: * 2024/anders - Prize in sound coding - layered music generator * 2024/burton - Prize in pentagrammatology - wordle hard mode solver * 2024/cable1 - Prize in bot talk - LLM inference engine * 2024/cable2 - Prize in murky waters - salmon recipe * 2024/carlini - Prize in perfect timing - Intel 4004 emulation * 2024/codemeow - Prize in tray planting - bonsai generator * 2024/endoh1 - Prize in patient pointillism - slow ray tracer in CPP * 2024/endoh2 - Prize in solid body physics - rotating rigid body simulation * 2024/ferguson1 - Prize in diabolical logistics - Oregon trail pact with the devil * 2024/ferguson2 - Prize in yil-tas - Navajo code talker translator * 2024/howe - Nice accent eh-ward - mini vi * 2024/kramer - Prize in linguistic arithmetic - natural language numerical calculator * 2024/kurdyukov1 - Prize in phased periodicity - phase of the Moon * 2024/kurdyukov2 - Prize in art restoration - JPEG artifact removal * 2024/kurdyukov3 - Prize in virtual quietus - gaming VM and doom * 2024/kurdyukov4 - Prize in embiggening - encode without literals * 2024/maffiodo - Prize in creative interpretation - Jav\*script interpreter * 2024/mills - Prize in ℤ₃ - Infocom v3 story interpreter * 2024/stedolan - Best one liner - icon from MD5 * 2024/straadt - Prize in imitative rebooting - OpenRISC CPU and Linux * 2024/tmarrec - Prize in cyclonic coding - 3D tornado simulation * 2024/tompng - Prize in quasi bijection - vortex encryptor decryptor * 2024/weaver - Sur prize - rickroll Ran `make update` to perform the above. new file: 2024/burton/.entry.json
This commit is contained in:
1 parent
10512e6c79
commit
09750f8899
443 files changed
+182938
-231
No files matched your search
+856
@@ -0,0 +1,856 @@
|
||||
<!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 -->
|
||||
|
||||
<!-- END: this line ends content from: inc/top.default.html -->
|
||||
<!-- START: this line starts content from: inc/head.default.html -->
|
||||
|
||||
<head>
|
||||
<link rel="stylesheet" href="../ioccc.css">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap" rel="stylesheet">
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
|
||||
<title>2024 - The 28th IOCCC</title>
|
||||
<link rel="icon" type="image/x-icon" href="../favicon.ico">
|
||||
<meta name="description" content="IOCCC Year 2024">
|
||||
<meta name="keywords" content="IOCCC, 2024, IOCCC 2024, IOCCC entry, The 28th IOCCC">
|
||||
</head>
|
||||
|
||||
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
||||
<!-- !!! DO NOT MODIFY THIS FILE - This file is generated by a tool !!! -->
|
||||
<!-- !!! DO NOT MODIFY THIS FILE - This file is generated by a tool !!! -->
|
||||
<!-- !!! DO NOT MODIFY THIS FILE - This file is generated by a tool !!! -->
|
||||
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
||||
|
||||
<!-- END: this line ends content from: inc/head.default.html -->
|
||||
|
||||
<!-- -->
|
||||
<!-- This web page was formed via the tool: bin/gen-year-index.sh -->
|
||||
<!-- The content of main section of this web page came from: 2024/README.md -->
|
||||
<!-- -->
|
||||
|
||||
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
||||
<!-- !!! Do not modify this web page, instead modify the file: 2024/README.md !!! -->
|
||||
<!-- !!! Do not modify this web page, instead modify the file: 2024/README.md !!! -->
|
||||
<!-- !!! Do not modify this web page, instead modify the file: 2024/README.md !!! -->
|
||||
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
||||
|
||||
<!-- Markdown content was converted into HTML via the tool: bin/md2html.sh -->
|
||||
|
||||
<!-- START: this line starts content from: inc/body.default.html -->
|
||||
|
||||
<body>
|
||||
|
||||
<!-- END: this line ends content from: inc/body.default.html -->
|
||||
<!-- START: this line starts content from: inc/topbar.default.html -->
|
||||
|
||||
<div class="theader">
|
||||
<nav class="topbar">
|
||||
<div class="container">
|
||||
<div class="logo">
|
||||
<a href="../index.html" class="logo-link">
|
||||
IOCCC
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="topbar-items">
|
||||
<div class="item">
|
||||
<span class="item-header">
|
||||
Entries
|
||||
</span>
|
||||
|
||||
<div class="sub-item">
|
||||
<div class="outfit-font">
|
||||
<a href="../years.html" class="sub-item-link">
|
||||
Winning entries
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="outfit-font">
|
||||
<a href="../authors.html" class="sub-item-link">
|
||||
Winning authors
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="outfit-font">
|
||||
<a href="../location.html" class="sub-item-link">
|
||||
Location of authors
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="outfit-font">
|
||||
<a href="../bugs.html" class="sub-item-link">
|
||||
Bugs and (mis)features
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="outfit-font">
|
||||
<a href="../faq.html#fix_an_entry" class="sub-item-link">
|
||||
Fixing entries
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="outfit-font">
|
||||
<a href="../faq.html#fix_author" class="sub-item-link">
|
||||
Updating author info
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="item">
|
||||
<span class="item-header">
|
||||
Status
|
||||
</span>
|
||||
|
||||
<div class="sub-item">
|
||||
<div class="outfit-font">
|
||||
<a href="../news.html" class="sub-item-link">
|
||||
News
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="outfit-font">
|
||||
<a href="../status.html" class="sub-item-link">
|
||||
Contest status
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="outfit-font">
|
||||
<a href="../next/index.html" class="sub-item-link">
|
||||
Rules and guidelines
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="outfit-font">
|
||||
<a href="../markdown.html" class="sub-item-link">
|
||||
Markdown guidelines
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="outfit-font">
|
||||
<a href="../SECURITY.html" class="sub-item-link">
|
||||
Security policy
|
||||
</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="item">
|
||||
<span class="item-header">
|
||||
FAQ
|
||||
</span>
|
||||
|
||||
<div class="sub-item">
|
||||
<div class="outfit-font">
|
||||
<a href="../faq.html" class="sub-item-link">
|
||||
Frequently Asked Questions
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="outfit-font">
|
||||
<a href="../quick-start.html#enter" class="sub-item-link">
|
||||
Enter the IOCCC
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="outfit-font">
|
||||
<a href="../faq.html#compiling" class="sub-item-link">
|
||||
Compiling entries
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="outfit-font">
|
||||
<a href="../faq.html#running_entries" class="sub-item-link">
|
||||
Running entries
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="outfit-font">
|
||||
<a href="../faq.html#help" class="sub-item-link">
|
||||
How to help
|
||||
</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="item">
|
||||
<span class="item-header">
|
||||
About
|
||||
</span>
|
||||
|
||||
<div class="sub-item">
|
||||
<div class="outfit-font">
|
||||
<a href="../index.html" class="sub-item-link">
|
||||
Home page
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="outfit-font">
|
||||
<a href="../about.html" class="sub-item-link">
|
||||
About the IOCCC
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="outfit-font">
|
||||
<a href="../judges.html" class="sub-item-link">
|
||||
The Judges
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="outfit-font">
|
||||
<a href="../thanks-for-help.html" class="sub-item-link">
|
||||
Thanks for the help
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="outfit-font">
|
||||
<a href="../contact.html" class="sub-item-link">
|
||||
Contact us
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="header-mobile-menu">
|
||||
<noscript>
|
||||
<a href="../nojs-menu.html" class="topbar-js-label">
|
||||
Please Enable JavaScript
|
||||
</a>
|
||||
</noscript>
|
||||
|
||||
<button id="header-open-menu-button" class="topbar-mobile-menu">
|
||||
<img
|
||||
src="../png/hamburger-icon-open.png"
|
||||
alt="hamburger style menu icon - open state"
|
||||
width=48
|
||||
height=48>
|
||||
</button>
|
||||
|
||||
<button id="header-close-menu-button" class="hide-content">
|
||||
<img
|
||||
src="../png/hamburger-icon-closed.png"
|
||||
alt="hamburger style menu icon - closed state"
|
||||
width=48
|
||||
height=48>
|
||||
</button>
|
||||
|
||||
<div id="mobile-menu-panel" class="hide-content">
|
||||
<div class="mobile-menu-container">
|
||||
|
||||
<div class="mobile-menu-wrapper">
|
||||
<div class="mobile-menu-item">
|
||||
Entries
|
||||
</div>
|
||||
<div class="mobile-submenu-wrapper">
|
||||
|
||||
<a class="mobile-submenu-item" href="../years.html">
|
||||
Winning entries
|
||||
</a>
|
||||
|
||||
<a class="mobile-submenu-item" href="../authors.html">
|
||||
Winning authors
|
||||
</a>
|
||||
|
||||
<a class="mobile-submenu-item" href="../location.html">
|
||||
Location of authors
|
||||
</a>
|
||||
|
||||
<a class="mobile-submenu-item" href="../bugs.html">
|
||||
Bugs and (mis)features
|
||||
</a>
|
||||
|
||||
<a class="mobile-submenu-item" href="../faq.html#fix_an_entry">
|
||||
Fixing entries
|
||||
</a>
|
||||
|
||||
<a class="mobile-submenu-item" href="../faq.html#fix_author">
|
||||
Updating author info
|
||||
</a>
|
||||
|
||||
<a class="mobile-submenu-item" href="../thanks-for-help.html">
|
||||
Thanks for the help
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="mobile-menu-wrapper">
|
||||
|
||||
<div class="mobile-menu-item">
|
||||
Status
|
||||
</div>
|
||||
<div class="mobile-submenu-wrapper">
|
||||
|
||||
<a class="mobile-submenu-item" href="../news.html">
|
||||
News
|
||||
</a>
|
||||
|
||||
<a class="mobile-submenu-item" href="../status.html">
|
||||
Contest status
|
||||
</a>
|
||||
|
||||
<a class="mobile-submenu-item" href="../next/index.html">
|
||||
Rules and guidelines
|
||||
</a>
|
||||
|
||||
<a class="mobile-submenu-item" href="../markdown.html">
|
||||
Markdown guidelines
|
||||
</a>
|
||||
|
||||
<a class="mobile-submenu-item" href="../SECURITY.html">
|
||||
Security policy
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="mobile-menu-wrapper">
|
||||
<div class="mobile-menu-item">
|
||||
FAQ
|
||||
</div>
|
||||
<div class="mobile-submenu-wrapper">
|
||||
|
||||
<a class="mobile-submenu-item" href="../faq.html">
|
||||
Frequently Asked Questions
|
||||
</a>
|
||||
|
||||
<a class="mobile-submenu-item" href="../quick-start.html#enter">
|
||||
Enter the IOCCC
|
||||
</a>
|
||||
|
||||
<a class="mobile-submenu-item" href="../faq.html#compiling">
|
||||
Compiling entries
|
||||
</a>
|
||||
|
||||
<a class="mobile-submenu-item" href="../faq.html#running_entries">
|
||||
Running entries
|
||||
</a>
|
||||
|
||||
<a class="mobile-submenu-item" href="../faq.html#help">
|
||||
How to help
|
||||
</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="mobile-menu-wrapper">
|
||||
<div class="mobile-menu-item">
|
||||
About
|
||||
</div>
|
||||
<div class="mobile-submenu-wrapper">
|
||||
|
||||
<a class="mobile-submenu-item" href="../index.html">
|
||||
Home page
|
||||
</a>
|
||||
|
||||
<a class="mobile-submenu-item" href="../about.html">
|
||||
About the IOCCC
|
||||
</a>
|
||||
|
||||
<a class="mobile-submenu-item" href="../judges.html">
|
||||
The Judges
|
||||
</a>
|
||||
|
||||
<a class="mobile-submenu-item" href="../contact.html">
|
||||
Contact us
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<script>
|
||||
var headerOpenMenuButton = document.getElementById("header-open-menu-button");
|
||||
var headerCloseMenuButton = document.getElementById("header-close-menu-button");
|
||||
var mobileMenuPanel = document.getElementById("mobile-menu-panel");
|
||||
|
||||
headerOpenMenuButton.addEventListener("click", () => {
|
||||
headerOpenMenuButton.classList.remove("topbar-mobile-menu");
|
||||
headerOpenMenuButton.classList.add("hide-content");
|
||||
|
||||
headerCloseMenuButton.classList.remove("hide-content");
|
||||
headerCloseMenuButton.classList.add("topbar-mobile-menu");
|
||||
|
||||
mobileMenuPanel.classList.remove("hide-content");
|
||||
mobileMenuPanel.classList.add("topbar-mobile-panel");
|
||||
});
|
||||
|
||||
headerCloseMenuButton.addEventListener("click", () => {
|
||||
headerCloseMenuButton.classList.remove("topbar-mobile-menu");
|
||||
headerCloseMenuButton.classList.add("hide-content");
|
||||
|
||||
mobileMenuPanel.classList.add("hide-content");
|
||||
mobileMenuPanel.classList.remove("topbar-mobile-panel");
|
||||
|
||||
headerOpenMenuButton.classList.add("topbar-mobile-menu");
|
||||
headerOpenMenuButton.classList.remove("hide-content");
|
||||
});
|
||||
</script>
|
||||
|
||||
<!-- END: this line ends content from: inc/topbar.default.html -->
|
||||
<!-- START: this line starts content from: inc/header.default.html -->
|
||||
|
||||
<div class="header">
|
||||
<a href="../2011/zucker/index.html">
|
||||
<img src="../png/ioccc.png"
|
||||
alt="IOCCC image by Matt Zucker"
|
||||
width=300
|
||||
height=110>
|
||||
</a>
|
||||
<h1>The International Obfuscated C Code Contest</h1>
|
||||
<h2>2024 - The 28th IOCCC</h2>
|
||||
</div>
|
||||
|
||||
<!-- END: this line ends content from: inc/header.default.html -->
|
||||
<!-- START: this line starts content from: inc/navbar.year.last.html -->
|
||||
|
||||
<div class="navbar">
|
||||
<a class="Left" href="../2020/index.html">← 2020</a>
|
||||
<a class="Left" href="../years.html">↑ top ↑</a>
|
||||
<a class="Left Disabled" href="#">No next</a>
|
||||
<a class="Right" href="#inventory">Inventory</a>
|
||||
<a class="Right" href="https://validator.w3.org/nu/?doc=https%3A%2F%2Fwww.ioccc.org%2F2024%2Findex.html">✓</a>
|
||||
</div>
|
||||
|
||||
<!-- END: this line ends content from: inc/navbar.year.last.html -->
|
||||
<!-- START: this line starts content from: inc/before-content.default.html -->
|
||||
|
||||
<div class="content" id="content">
|
||||
|
||||
<!-- END: this line ends content from: inc/before-content.default.html -->
|
||||
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
|
||||
|
||||
<!-- BEFORE: 1st line of markdown file: 2024/README.md -->
|
||||
<h1 id="twenty-eighth-international-obfuscated-c-code-contest">Twenty Eighth International Obfuscated C Code Contest</h1>
|
||||
<h2 id="where-to-start">Where to start</h2>
|
||||
<p>See below for links to the <a href="#inventory">2024 winning IOCCC entries</a>.</p>
|
||||
<p>Check out the <code>index.html</code> web pages for each winning entry. They have
|
||||
most of the information you need to compile and run the winning program.
|
||||
Take a look at the winning source code and try to figure out how it works.
|
||||
You might also want to check out the author’s remarks for even more details.</p>
|
||||
<p>You may <a href="2024.tar.bz2">download all winning entries</a> in the form
|
||||
of a compressed tarball, for this year’s contest.</p>
|
||||
<h2 id="general-remarks-on-this-contest">General remarks on this contest</h2>
|
||||
<p>This year marked the <a href="../faq.html#ioccc_start">40th anniversary of the IOCCC</a>.
|
||||
The <strong>IOCCC28</strong> opened submissions from <strong>2025-03-05 23:19:17.131107 UTC</strong> to <strong>2025-06-05
|
||||
04:03:02.010099 UTC</strong> after a 4 year pause.</p>
|
||||
<p>A significant portion of those 4 years was an effort by a <a href="../thanks-for-help.html">number of people</a>,
|
||||
with over 6168+ commits, to rebuild the <a href="../index.html">Official IOCCC website</a>
|
||||
in what became known as the <strong>Great Fork Merge</strong>.</p>
|
||||
<p>Another portion of those 4 years went into retooling the IOCCC, including the creation of
|
||||
the <a href="https://github.com/ioccc-src/mkiocccentry">mkiocccentry toolkit</a>, a new
|
||||
<a href="../next/register.html">IOCCC registration process</a>, and a new
|
||||
<a href="https://submit.ioccc.org/">IOCCC submit server</a> (which may not be up if the contest is closed).</p>
|
||||
<p>The <strong>major motivation</strong> for the above was to:</p>
|
||||
<ul>
|
||||
<li><p>Present <a href="../years.html">IOCCC winners</a> that that honors the contributions of all of the <a href="../authors.html">winning authors</a> from <a href="../location.html">around the world</a>,</p></li>
|
||||
<li><p>Reduce the administrative effort required by the <a href="../judges.html">IOCCC Judges</a> to run the contest, and</p></li>
|
||||
<li><p>Minimize the time between when the winners of the IOCCC are selected and when the source is made available.</p></li>
|
||||
</ul>
|
||||
<p>On the last point, for <strong>IOCCC28</strong> the Judging started on <strong>2025-06-05 04:03:02.010099 UTC</strong> and then the winners were selected by the <a href="../judges.html">IOCCC Judges</a> on <strong>2025-07-07 20:05:07.000000 UTC</strong>:</p>
|
||||
<ul>
|
||||
<li><p>Winners were announced during a live the <a href="https://www.youtube.com/@OurFavoriteUniverse">Our Favorite Universe</a> YouTube Channel that started on <strong>2025-08-02 18:00:00.000000 UTC</strong></p></li>
|
||||
<li><p>Near the end of the 2 hour XXX-add-show-URL-here-XXX YouTube show, the <strong>source code</strong> of the <a href="#inventory">IOCCC28 winning entries</a> was published on <a href="https://github.com/ioccc-src/winner">IOCCC GitHub winner repo</a> and on the <a href="../index.html">Official IOCCC website</a>.</p></li>
|
||||
</ul>
|
||||
<p><strong>No longer will there be many months</strong> between when the winners are
|
||||
announced and their source code is made available. For <strong>IOCCC28</strong>
|
||||
the time was <strong>less than 2 hours</strong>. :-)</p>
|
||||
<h3 id="increased-submission-quantity-and-quality">Increased submission quantity and quality</h3>
|
||||
<p>The submissions to <strong>IOCCC28</strong> were remarkable when compared with previous contests, in both the
|
||||
<strong>increased quantity and quality</strong> of the submissions. As a result the judging process for <strong>IOCCC28</strong>
|
||||
was more challenging and required greater effort. Thankfully due to the above mentioned improvements,
|
||||
the judging process <strong>took only 33 days</strong>. Under the previous system it <strong>would have taken much longer</strong>!</p>
|
||||
<p>One thing that began to emerge after we exits the early rounds of judging and entered the middle rounds
|
||||
of judging was that we were very likely to have more winning entries than in previous contests.
|
||||
Even so, the final rounds of judging required more rounds and tool longer than in any previous IOCCC.</p>
|
||||
<p>At the end of the final round of the final rounds of judging, we had a record <strong>23 winners of IOCCC28</strong>,
|
||||
eclipsing the record of 15 winners!</p>
|
||||
<p>While we suspect that the 4 year gap between <strong>IOCCC27</strong> and <strong>IOCCC28</strong> allowed people extra
|
||||
time to improve their submissions, we also believe that people submitting to the IOCCC have
|
||||
adept in obfuscation and have become more skilled in the programming in the C language.</p>
|
||||
<h3 id="code-size-and-rule-2">Code size and Rule 2</h3>
|
||||
<p>We were pleased to observe that while the <a href="../faq.html#size_rule_history">IOCCC size limit</a>
|
||||
increased by about 21%, we received many submissions that were well under the new
|
||||
<a href="../next/rules.html#rule2">Rule 2 size limit</a> including a fair number of quality
|
||||
small and medium sized submissions. Half of the <strong>IOCCC28 winners</strong> were less than
|
||||
<em>2/3 of the size limit</em>, and 10 of the <strong>IOCCC28 winners</strong> were less than
|
||||
<em>1/2 of the size limit</em>!</p>
|
||||
<p><strong>IMPORTANT NOTE</strong>: The <a href="../faq.html#size_rule_history">IOCCC size limit</a> increase for <strong>IOCCC28</strong>
|
||||
was the first size increase in over 10 years. Given the quality of submissions we received
|
||||
that were well under the limit, we do <strong>NOT</strong> expect to change the
|
||||
<a href="../next/rules.html#rule2">Rule 2 size limit</a> for <strong>at least another 10 years</strong> (and likely longer).</p>
|
||||
<p><strong>IMPORTANT HINT</strong>: Only 3 of 23 the <strong>IOCCC28 winners</strong> came close to the <a href="../next/rules.html#rule2">Rule 2 size limit</a>.
|
||||
Large code size isn’t everything. :-) Those submitting to future contents should
|
||||
<strong>take a careful note</strong> of that fact.</p>
|
||||
<h3 id="rules-and-guidelines-for-this-contest">Rules and Guidelines for this contest</h3>
|
||||
<p>Here are the final versions of the IOCCC rules and guidelines that were in effect for this contest:</p>
|
||||
<ul>
|
||||
<li><a href="rules.html">2024 rules</a> version <strong>28.30 2025-03-03</strong></li>
|
||||
<li><a href="guidelines.html">2024 guidelines</a> version <strong>28.47 2025-03-15</strong></li>
|
||||
</ul>
|
||||
<h3 id="looking-forward-to-the-next-contest">Looking forward to the next contest</h3>
|
||||
<p>The <a href="../judges.html">IOCCC Judges</a> realize that the <a href="../next/rules.html">IOCCC rules</a> and
|
||||
the <a href="../next/guidelines.html">IOCCC guidelines</a> need to be <strong>greatly improved and streamlined</strong>.
|
||||
We decided to not overhaul them for <strong>IOCCC28</strong> so as to <strong>NOT</strong> delay the opening of the contest.</p>
|
||||
<p>After the <a href="../judges.html">IOCCC Judges</a> take a short <em>IOCCC Vacation</em> (we have been working solid
|
||||
on <strong>IOCCC28</strong> since <strong>2020 Dec 30</strong>), we plan to update, improve and streamline the
|
||||
<a href="../next/rules.html">IOCCC rules</a> and the <a href="../next/guidelines.html">IOCCC guidelines</a> for <strong>IOCCC29</strong>.
|
||||
Then we will address whatever bug fixes in the form of GitHub Pull Requests to both the
|
||||
<a href="https://github.com/ioccc-src/winner">IOCCC GitHub winner repo</a> and the
|
||||
<a href="https://github.com/ioccc-src/mkiocccentry">mkiocccentry toolkit repo</a> that may be pending.</p>
|
||||
<p>Once we are all caught up, we will set the opening date for <strong>IOCCC29</strong>. It is our plan
|
||||
to open <strong>IOCCC29</strong> sometime in <strong>2025 December</strong>.</p>
|
||||
<h2 id="remarks-on-some-of-the-winning-entries">Remarks on some of the winning entries</h2>
|
||||
<p>There were a number of remarkable winning entries for <strong>IOCCC28</strong>. We wish to call
|
||||
attention to a few of them:</p>
|
||||
<ul>
|
||||
<li><a href="kurdyukov1/index.html">2024/kurdyukov1</a></li>
|
||||
</ul>
|
||||
<p>This entry is a fun revisit of the theme of <a href="../2000/natori/index.html">2000/natori</a>,
|
||||
only better and without using any floating point arithmetic. You are invited
|
||||
to try and understand why the constant <code>2551443</code> is common to both entries.</p>
|
||||
<ul>
|
||||
<li><a href="cable1/index.html">2024/cable1</a></li>
|
||||
</ul>
|
||||
<p>This entry claims to be “<em>the world’s smallest LLM (large language
|
||||
model) inference engine</em>”: running open-source model based on Meta’s
|
||||
LLaMA 2 with 7 billion parameters. After downloading the model via the
|
||||
<a href="https://github.com/ioccc-src/winner/blob/master/2024/cable1/get_model.sh">2024/cable1/get_model.sh</a> script,
|
||||
we invite you explore this <strong>ChatIOCCC</strong> tool. While not super fast,
|
||||
the tool’s output can be amusing.</p>
|
||||
<p>You might wish to ask <strong>ChatIOCCC</strong>: “<em>Why did this entry win IOCCC28?</em>”?</p>
|
||||
<p>We encourage you to read and understand the
|
||||
<a href="https://github.com/ioccc-src/winner/blob/master/2024/cable1/prog.c">2024/cable1/prog.c source code</a>. Then see
|
||||
if the <strong>ChatIOCCC</strong> tool can offer any new, or even correct insights
|
||||
into the code’s obfuscation. :-)</p>
|
||||
<ul>
|
||||
<li><a href="howe/index.html">2024/howe</a></li>
|
||||
</ul>
|
||||
<p>“<em>Eh</em>”? The source code, with its UTF-8 conforming accent gives you a
|
||||
polite editor that is more functional an <code>ed(1)</code>.</p>
|
||||
<p>We invite you to use the program to view the UTF-8 fun in the
|
||||
<a href="https://github.com/ioccc-src/winner/blob/master/2024/howe/prog.c">2024/howe/prog.c source code</a>.</p>
|
||||
<p><strong>HINT to emacs users</strong>: type <strong>Q</strong> or press <strong>CTRL+C</strong> to exit. 🤓</p>
|
||||
<ul>
|
||||
<li><a href="stedolan/index.html">2024/stedolan</a></li>
|
||||
</ul>
|
||||
<p>When you view the <a href="https://github.com/ioccc-src/winner/blob/master/2024/stedolan/prog.c">prog.c source code</a>,
|
||||
notice magic numbers. This <strong>one liner</strong> packs a significant amount
|
||||
of obfuscation in only 135 bytes!</p>
|
||||
<p>Try giving 10 hex digits to standard input of the program. Then try a
|
||||
different hex digits value. Then feed the MD5 hash of the
|
||||
<a href="https://github.com/ioccc-src/winner/blob/master/2024/stedolan/prog.c">2024/stedolan/prog.c source code</a> and
|
||||
“<em>C</em>” what happens. :-)</p>
|
||||
<ul>
|
||||
<li><a href="endoh1/index.html">2024/endoh1</a></li>
|
||||
</ul>
|
||||
<p>The <a href="https://github.com/ioccc-src/winner/blob/master/2024/endoh1/try.sh">2024/endoh1/try.sh</a> will carry you on
|
||||
a journey that tests your patience as well as the patience of the C-preprocessor.</p>
|
||||
<p>Building a 8x8 image requires order of 20 seconds of C-preprocessor
|
||||
time, when running 6 jobs on 4 CPU cores in parallel. Unfortunately,
|
||||
with such a tiny image, it is hard to appreciate the image being rendered.</p>
|
||||
<p>So you might try building a 32x32 form of the image, invoking the
|
||||
C-preprocessor 1024 times. When using 6 jobs on 4 CPU cores in parallel,
|
||||
this might take about 5.5 minutes to complete. However, the small image
|
||||
only gives you a hint of the image being rendered.</p>
|
||||
<p>If you have the time you might try building a 128x128 image, invoking
|
||||
the C-preprocessor 16384 times. With 6 jobs on 4 CPU cores in parallel,
|
||||
this will take about 1.5 hours. At this scale you might consider it
|
||||
worthwhile to render a more detailed image.</p>
|
||||
<p>Using 6 jobs on 4 CPU cores in parallel, to build a 512x512 image invoking
|
||||
the C-preprocessor 262144 times over a period of about 23.5 hours, you
|
||||
will be given an image with a reasonable amount of detail to appreciate
|
||||
what is being rendered.</p>
|
||||
<p>One fun aspect of the <a href="https://github.com/ioccc-src/winner/blob/master/2024/endoh1/prog.c">2024/endoh1/prog.c source code</a>
|
||||
is that when it is compiled an executed, the program outputs C code.
|
||||
That C code, call it <code>rt.c</code> will fail to compile! But that is OK because the C-preprocessor
|
||||
has enough work to do without bothering the C compiler. :-)</p>
|
||||
<p>We plan to recognise those who report that they <a href="endoh1/index.html#larger">rendered a new record sized image</a>.</p>
|
||||
<ul>
|
||||
<li><a href="weaver/index.html">2024/weaver</a></li>
|
||||
</ul>
|
||||
<p>As the expression goes, “Seeing (and hearing) is believing”: or at least can lead to better understanding of the code. :o)</p>
|
||||
<p>After studying the <a href="https://github.com/ioccc-src/winner/blob/master/2024/weaver/prog.c">2024/weaver/prog.c source code</a>,
|
||||
we suggest you compile and run the program for more information.</p>
|
||||
<ul>
|
||||
<li><a href="mills/index.html">2024/mills</a></li>
|
||||
</ul>
|
||||
<p>This won the “<strong>Prize in ℤ₃</strong>”, but what does that mean? Well,
|
||||
the “<em>double-struck Z</em>” is <strong>NOT</strong> a reference to a set of integers,
|
||||
nor is the “<em>double-struck Z subscript 3</em>” a reference to a ring of
|
||||
3-adic integers. Instead, it is a reference to the 3rd version of a
|
||||
certain <a href="https://en.wikipedia.org/wiki/Z-machine">virtual machine</a>.</p>
|
||||
<p>If you use the <a href="https://github.com/ioccc-src/winner/blob/master/2024/mills/try.sh">2024/mills/try.sh</a> script, you will first be given
|
||||
an opportunity to view the <a href="https://github.com/ioccc-src/winner/blob/master/2024/mills/prog.c">2024/mills/prog.c source code</a>.
|
||||
Then you will be given 10 choices to play.</p>
|
||||
<p><strong>HINT</strong>: If you select <strong>0</strong>: Try to not be eaten by a Grue when
|
||||
reading/navigating the twisty mazes of this source code! :-)</p>
|
||||
<ul>
|
||||
<li><a href="codemeow/index.html">2024/codemeow</a></li>
|
||||
</ul>
|
||||
<p>As you study the <a href="https://github.com/ioccc-src/winner/blob/master/2024/codemeow/prog.c">2024/codemeow/prog.c source code</a>,
|
||||
try not to lose track of the forest of obfuscation while tracking down the execution path trees.</p>
|
||||
<p>We think this code will “grow on you” as the C expression goes just a compiled C code “<em>grows on parse trees</em>”. :-)</p>
|
||||
<ul>
|
||||
<li><a href="kurdyukov2/index.html">2024/kurdyukov2</a></li>
|
||||
</ul>
|
||||
<p>If seeing is believing, and you believe you understand the
|
||||
<a href="https://github.com/ioccc-src/winner/blob/master/2024/kurdyukov2/prog.c">2024/kurdyukov2/prog.c source code</a>,
|
||||
then you might be able to see how the code words.</p>
|
||||
<p><strong>QUESTION</strong>: How many of the “<em>magic numbers</em>” in the program do you understand?</p>
|
||||
<ul>
|
||||
<li><a href="kurdyukov3/index.html">2024/kurdyukov3</a></li>
|
||||
</ul>
|
||||
<p>The prize, “<strong>virtual quietus</strong>”, is a virtual reference to the doom that awaits you when
|
||||
you run this code: let alone when your try to figure out how the author was able to
|
||||
encode the virtual machine in under <strong>2.5K bytes</strong> of <a href="https://github.com/ioccc-src/winner/blob/master/2024/kurdyukov3/prog.c">prog.c source code</a>!</p>
|
||||
<p><strong>NOTE</strong>: The implementation runs without sound or mouse
|
||||
input. You will need reply on your keyboard skills. The
|
||||
<a href="https://github.com/ioccc-src/winner/blob/master/2024/kurdyukov3/try.sh">2024/kurdyukov3/try.sh</a>
|
||||
demonstration script will give you some useful keyboard hints.</p>
|
||||
<ul>
|
||||
<li><a href="cable2/index.html">2024/cable2</a></li>
|
||||
</ul>
|
||||
<p>To those who follow the concept of “<em>seeing is believing</em>” will very
|
||||
likely be “<em>deceived</em>” when they try to see the source in terminal window:</p>
|
||||
<pre><code> cat 2024/cable2/prog.c</code></pre>
|
||||
<p>Viewing the <a href="https://github.com/ioccc-src/winner/blob/master/2024/cable2/prog.c">prog.c source code</a> in most editors
|
||||
might suggest that the is something fishy 🐠 with the code.</p>
|
||||
<ul>
|
||||
<li><a href="straadt/index.html">2024/straadt</a></li>
|
||||
</ul>
|
||||
<p>Have you ever wondered would what would happen if you recursively removed
|
||||
files starting from the root directory? Are you curious what happens when
|
||||
you launch a <a href="https://en.wikipedia.org/wiki/Fork_bomb">fork bomb</a>?
|
||||
You can safely give those and other scenarios under this virtual machine.</p>
|
||||
<p>We invite you to explore the <a href="https://github.com/ioccc-src/winner/blob/master/2024/straadt/prog.c">prog.c source code</a>
|
||||
to explore this interesting virtual machine implementation. And as a bonus, a
|
||||
full-fledged C64 emulator is included!</p>
|
||||
<ul>
|
||||
<li><a href="ferguson2/index.html">2024/ferguson2</a></li>
|
||||
</ul>
|
||||
<p>The “<strong>Prize in yil-tas</strong>” provides a hint as to what this marvelous
|
||||
winning entry is going, provided that you are someone familiar in at
|
||||
least 3 languages (<strong>hint</strong>: One of them is C, another id English).</p>
|
||||
<p>The IOCCC is honored to present this entry for your enjoyment and you ponder
|
||||
the <a href="https://github.com/ioccc-src/winner/blob/master/2024/ferguson2/prog.c">prog.c source code</a>.</p>
|
||||
<ul>
|
||||
<li><a href="carlini/index.html">2024/carlini</a></li>
|
||||
</ul>
|
||||
<p>The IOCCC has seen a number of winning entries that allow code designed to
|
||||
run on early Intel processors, however none of them emulate a processor as
|
||||
early as the <a href="https://en.wikipedia.org/wiki/Intel_4004">Intel 4004</a>.
|
||||
Launched in 1971, the 4004 was the core of the first commercially marketed
|
||||
microprocessor chipset.</p>
|
||||
<p>The <a href="https://github.com/ioccc-src/winner/blob/master/2024/carlini/prog.c">2024/carlini/prog.c</a>
|
||||
code runs rather slow, so patience is required to watch
|
||||
<a href="https://en.wikipedia.org/wiki/Intel_4004#/media/File:Intel_C4004.jpg">4004</a>
|
||||
code run. This is very understandable when you realize that the
|
||||
<a href="https://github.com/ioccc-src/winner/blob/master/2024/carlini/prog.c">2024/carlini/prog.c</a> is actually
|
||||
emulating the entire
|
||||
<a href="https://en.wikipedia.org/wiki/Intel_4004#/media/File:Chip_layout_from_the_development_phase_of_the_Intel_4004_from_1971,_the_first_microprocessor_of_the_world_(cropped_and_edited_image).jpg">4004 chip circuit</a>
|
||||
by computing the output of each gate in a loop, effectively running the CPU and associated RAM/ROM chips!</p>
|
||||
<h3 id="remarks-on-some-of-submissions-that-did-not-win">Remarks on some of submissions that did not win</h3>
|
||||
<ul>
|
||||
<li><p>Depending on the address of a variable, as not all platforms support
|
||||
<a href="https://en.wikipedia.org/wiki/Address_space_layout_randomization">ASLR</a>,
|
||||
as the single source of pseudo-randomness isn’t a good idea. It’s
|
||||
much better to mix in other sources of variability (e.g. time, process
|
||||
ID, etc.) so that subsequent runs will behave differently.</p></li>
|
||||
<li><p>If a submission’s obfuscation strongly resembles a past IOCCC winning
|
||||
entry, and the submission’s obfuscation is mainly in the C code source,
|
||||
then the submission likely to not make it into the final rounds of judging.</p></li>
|
||||
<li><p>When working with modern C compilers, it’s crucial to explicitly
|
||||
declare variable and function types. Don’t assume they’ll
|
||||
automatically default to an <code>int</code>.</p></li>
|
||||
<li><p>Sadly, K&C-style C code does not compile well under modern C compilers.</p></li>
|
||||
<li><p>A submission that only works under gcc or clang does not work as well
|
||||
as submissions that can work under either compiler.</p></li>
|
||||
<li><p>Shrinking an existing open-source program to meet rule 2 size might
|
||||
be an impressive feat of code shrinking, but it might not be enough to
|
||||
make it into the final rounds of judging. Originality is key, and this
|
||||
might not be the most innovative approach.</p></li>
|
||||
<li><p>If your submission relies on mathematical algorithms, be sure that the
|
||||
C code that implements the mathematics is well obfuscated.</p></li>
|
||||
<li><p>Just a friendly reminder that before you upload your submissions,
|
||||
uncompress the compressed tarball into a different directory. This way,
|
||||
you can be sure you didn’t miss uploading any important files!</p></li>
|
||||
<li><p>Using a lot of goto statements to make your code harder to understand
|
||||
might not help it pass the final rounds of judging.</p></li>
|
||||
</ul>
|
||||
<h3 id="encouragement-for-those-who-did-not-win-this-year">Encouragement for those who did not win this year</h3>
|
||||
<p>We know many of you that submitted to the IOCCC put in a ton of effort
|
||||
into your submissions for this year’s IOCCC. We can’t just give out
|
||||
awards to everyone. That would mean taking away from the submissions
|
||||
that we think are the best and deserve to win.</p>
|
||||
<p>Sometimes, a final round submission might be good enough to be a
|
||||
winning IOCCC entry, only to be beaten by a similar, but slightly better
|
||||
submission. If you think this happened with your submission, consider
|
||||
submitting an enhanced version to the next IOCCC.</p>
|
||||
<p><strong>PLEASE DO NOT</strong> give up hope! There are some submissions that have been
|
||||
submitted with revisions, multiple times before rising to the level of
|
||||
a winning IOCCC entry. You might also want to try with a different type
|
||||
of submission altogether for the next IOCCC.</p>
|
||||
<p>If you’re not planning to improve and resubmit your non-winning entry
|
||||
for the next IOCCC, you’re welcome to publish it.</p>
|
||||
<h2 id="on-compiling-and-running-winning-entries">On Compiling and running winning entries</h2>
|
||||
<p>Some C compilers aren’t as great as they could be. If yours isn’t
|
||||
working well, you might want to try compiling with an updated version
|
||||
of clang and/or gcc instead.</p>
|
||||
<p>If you encounter problems in compiling and/or running the winning entries, see the FAQ on:</p>
|
||||
<ul>
|
||||
<li><a href="../faq.html#compiling">Compiling IOCCC entries</a></li>
|
||||
<li><a href="../faq.html#dependencies">IOCCC entry dependencies</a></li>
|
||||
<li><a href="../faq.html#compile_problems">Problems compiling entries</a></li>
|
||||
<li><a href="../faq.html#running_entries">Running IOCCC entries</a></li>
|
||||
</ul>
|
||||
<p>For additional information on how to submit fixes, see the FAQ on:</p>
|
||||
<ul>
|
||||
<li><a href="../faq.html#fix_an_entry">How to submit a fix</a> - how to submit a fix to an entry</li>
|
||||
<li><a href="../faq.html#fix_author">Update author information</a> - how to correct or update an IOCCC author’s information</li>
|
||||
</ul>
|
||||
<h3 id="for-even-more-information">For even more information</h3>
|
||||
<ul>
|
||||
<li><a href="../faq.html#report_website_problem">Reporting an IOCCC website problem</a></li>
|
||||
<li><a href="../faq.html#fix_website">Submitting a fix to the IOCCC website</a></li>
|
||||
<li><a href="../contact.html">How to contact the IOCCC</a> - up to date contact details</li>
|
||||
<li><a href="../faq.html">IOCCC FAQ</a> - additional information on the IOCCC</li>
|
||||
<li><a href="https://www.ioccc.org">www.ioccc.org</a> - the primary IOCCC website</li>
|
||||
</ul>
|
||||
<!--
|
||||
|
||||
Copyright © 1984-2025 by Landon Curt Noll and Leonid A. Broukhis. All Rights Reserved.
|
||||
|
||||
You are free to share and adapt this file under the terms of this license:
|
||||
|
||||
Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)
|
||||
|
||||
For more information, see:
|
||||
|
||||
https://creativecommons.org/licenses/by-sa/4.0/
|
||||
|
||||
-->
|
||||
<!-- AFTER: last line of markdown file: 2024/README.md -->
|
||||
|
||||
<!-- END: this line ends content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
|
||||
<!-- START: this line starts content for HTML phase 22 by: bin/output-year-index.sh via bin/md2html.sh -->
|
||||
|
||||
<!-- START: this line starts content generated by: bin/output-year-index.sh -->
|
||||
|
||||
<div id="inventory">
|
||||
<div id="2024">
|
||||
<h1 id="winning-entries-of-2024---the-28th-ioccc">Winning Entries of 2024 - The 28th IOCCC</h1>
|
||||
</div>
|
||||
</div>
|
||||
<p><a href="2024.tar.bz2"><strong>Download all winning entries from 2024</strong></a></p>
|
||||
<ul>
|
||||
<li><a href="anders/index.html"><strong>2024/anders</strong></a> - <strong>Prize in sound coding</strong></li>
|
||||
<li><a href="burton/index.html"><strong>2024/burton</strong></a> - <strong>Prize in pentagrammatology</strong></li>
|
||||
<li><a href="cable1/index.html"><strong>2024/cable1</strong></a> - <strong>Prize in bot talk</strong></li>
|
||||
<li><a href="cable2/index.html"><strong>2024/cable2</strong></a> - <strong>Prize in murky waters</strong></li>
|
||||
<li><a href="carlini/index.html"><strong>2024/carlini</strong></a> - <strong>Prize in perfect timing</strong></li>
|
||||
<li><a href="codemeow/index.html"><strong>2024/codemeow</strong></a> - <strong>Prize in tray planting</strong></li>
|
||||
<li><a href="endoh1/index.html"><strong>2024/endoh1</strong></a> - <strong>Prize in patient pointillism</strong></li>
|
||||
<li><a href="endoh2/index.html"><strong>2024/endoh2</strong></a> - <strong>Prize in solid body physics</strong></li>
|
||||
<li><a href="ferguson1/index.html"><strong>2024/ferguson1</strong></a> - <strong>Prize in diabolical logistics</strong></li>
|
||||
<li><a href="ferguson2/index.html"><strong>2024/ferguson2</strong></a> - <strong>Prize in yil-tas</strong></li>
|
||||
<li><a href="howe/index.html"><strong>2024/howe</strong></a> - <strong>Nice accent eh-ward</strong></li>
|
||||
<li><a href="kramer/index.html"><strong>2024/kramer</strong></a> - <strong>Prize in linguistic arithmetic</strong></li>
|
||||
<li><a href="kurdyukov1/index.html"><strong>2024/kurdyukov1</strong></a> - <strong>Prize in phased periodicity</strong></li>
|
||||
<li><a href="kurdyukov2/index.html"><strong>2024/kurdyukov2</strong></a> - <strong>Prize in art restoration</strong></li>
|
||||
<li><a href="kurdyukov3/index.html"><strong>2024/kurdyukov3</strong></a> - <strong>Prize in virtual quietus</strong></li>
|
||||
<li><a href="kurdyukov4/index.html"><strong>2024/kurdyukov4</strong></a> - <strong>Prize in embiggening</strong></li>
|
||||
<li><a href="maffiodo/index.html"><strong>2024/maffiodo</strong></a> - <strong>Prize in creative interpretation</strong></li>
|
||||
<li><a href="mills/index.html"><strong>2024/mills</strong></a> - <strong>Prize in ℤ₃</strong></li>
|
||||
<li><a href="stedolan/index.html"><strong>2024/stedolan</strong></a> - <strong>Best one liner</strong></li>
|
||||
<li><a href="straadt/index.html"><strong>2024/straadt</strong></a> - <strong>Prize in imitative rebooting</strong></li>
|
||||
<li><a href="tmarrec/index.html"><strong>2024/tmarrec</strong></a> - <strong>Prize in cyclonic coding</strong></li>
|
||||
<li><a href="tompng/index.html"><strong>2024/tompng</strong></a> - <strong>Prize in quasi bijection</strong></li>
|
||||
<li><a href="weaver/index.html"><strong>2024/weaver</strong></a> - <strong>Sur prize</strong></li>
|
||||
</ul>
|
||||
<hr style="width:10%;text-align:left;margin-left:0">
|
||||
<h4>
|
||||
Jump to: <a href="#">top</a>
|
||||
</h4>
|
||||
|
||||
<!-- END: next line ends content generated by: bin/output-year-index.sh -->
|
||||
|
||||
<!-- END: this line ends content for HTML phase 22 by: bin/output-year-index.sh via bin/md2html.sh -->
|
||||
<!-- START: this line starts content from: inc/after-content.default.html -->
|
||||
|
||||
</div>
|
||||
|
||||
<!-- END: this line ends content from: inc/after-content.default.html -->
|
||||
<!-- START: this line starts content from: inc/footer.inventory.html -->
|
||||
|
||||
<!--
|
||||
|
||||
Copyright © 1984-2024 by Landon Curt Noll. All Rights Reserved.
|
||||
|
||||
You are free to share and adapt this file under the terms of this license:
|
||||
|
||||
Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)
|
||||
|
||||
For more information, see:
|
||||
|
||||
https://creativecommons.org/licenses/by-sa/4.0/
|
||||
|
||||
-->
|
||||
|
||||
<div class="footer">
|
||||
|
||||
<div id="copyright"><h3>Copyright © 1984-2024 by Landon Curt Noll:
|
||||
<a href="https://creativecommons.org/faq/#what-does-some-rights-reserved-mean"
|
||||
target="_blank"
|
||||
rel="license noopener noreferrer">Some Rights Reserved</a></h3>
|
||||
<p>
|
||||
This work is <b>licensed by Landon Curt Noll</b> under
|
||||
<b><a href="https://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1"
|
||||
target="_blank"
|
||||
rel="license noopener noreferrer"
|
||||
style="display:inline-block;">CC BY-SA 4.0</a></b>.
|
||||
<img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;"
|
||||
src="../png/cc.png"
|
||||
alt="cc inside circle symbol">
|
||||
<img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;"
|
||||
src="../png/by.png"
|
||||
alt="person inside circle symbol">
|
||||
<img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;"
|
||||
src="../png/sa.png"
|
||||
alt="arrow looping back on itself inside circle symbol"><br>
|
||||
You should <b>carefully review</b> the
|
||||
<b><a href="https://creativecommons.org/licenses/by-sa/4.0/legalcode.en"
|
||||
target="_blank"
|
||||
rel="license noopener noreferrer">CC BY-SA 4.0 LEGAL CODE</a></b>
|
||||
before using the licensed material.<br>
|
||||
You may wish to review the
|
||||
<b><a href="../license.html"
|
||||
target="_blank"
|
||||
rel="license noopener noreferrer">highlights of some of the key features and terms</a></b>
|
||||
of <b>CC BY-SA 4.0</b>.<br>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="coda"><h3>Coda</h3>
|
||||
<p>
|
||||
<a href="https://validator.w3.org/nu/?doc=https%3A%2F%2Fwww.ioccc.org%2F2024%2Findex.html" rel="nofollow">Nu HTML check this web page</a><br>
|
||||
<a href="#top">Jump to top</a> <a href="#content">Jump to Content</a> <a href="#inventory">Jump to Inventory</a><br>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- END: this line ends content from: inc/footer.inventory.html -->
|
||||
<!-- START: this line starts content from: inc/bottom.default.html -->
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
<!-- END: this line ends content from: inc/bottom.default.html -->
|
||||
Reference in new issue
Block a user