diff --git a/alternative.css b/alternative.css
new file mode 100644
index 0000000..58882e9
--- /dev/null
+++ b/alternative.css
@@ -0,0 +1,247 @@
+html,
+body {
+  margin: 0;
+  padding: 0;
+  border: 0;
+  height: 100%;
+  font-family: "Trebuchet MS", Helvetica, sans-serif;
+  font-size: 11pt;
+  background-color: #fff;
+}
+
+a,
+a:active,
+a:visited {
+  text-decoration: none;
+  color: inherit;
+}
+
+a:hover {
+  text-decoration: underline;
+}
+
+header {
+  padding: 5px 11px;
+  border-bottom: 3px solid #659fdb;
+  box-shadow: 0 -8px 22px 0;
+  background-color: #252525;
+  color: white;
+  font-size: 9pt;
+}
+
+.wrapper {
+  min-height: 100%;
+}
+
+header nav,
+header strong {
+  font-size: 11pt;
+}
+
+header nav {
+  float: right;
+}
+
+footer {
+  height: 30px;
+  width: 100%;
+  border-top: 1px solid #aaa;
+  margin-top: -31px;
+  text-align: center;
+  color: #666;
+  line-height: 30px;
+  font-size: 9pt;
+  background: none repeat scroll 0 0 #ddd;
+}
+
+.container {
+  padding: 10px 10px 41px 20px;
+}
+
+h1 {
+  margin: 0;
+  margin-bottom: 5px;
+  font-size: 14pt;
+  font-family: "Trebuchet MS", Helvetica, sans-serif;
+}
+
+#module-header {
+  border-bottom: 1px solid #bbb;
+  padding-bottom: 2px;
+}
+
+ul {
+  list-style-type: none;
+  margin: 0;
+  padding: 0;
+}
+
+hr {
+  margin: 0;
+  padding: 0;
+  border: 0;
+  border-bottom: 1px solid #bbb;
+}
+
+p {
+  margin: 0;
+  padding: 0;
+}
+
+pre {
+  display: inline;
+  margin: 0;
+  padding: 0;
+}
+
+.code {
+  font-family: "Lucida Console", Monaco, monospace;
+  font-size: 10pt;
+}
+
+.decls {
+  margin-top: 5px;
+}
+
+.decls > dt {
+  font-family: "Lucida Console", Monaco, monospace;
+  font-size: 10pt;
+  line-height: 20px;
+  padding: 2px 6px;
+  border: 1px solid #ccc;
+  background-color: #f0f0f0;
+  display: table;
+  width: 100%;
+  box-sizing: border-box;
+  white-space: pre-wrap;
+}
+
+.decls > dd {
+  margin: 10px 0 20px 20px;
+  font-family: Arial, sans-serif;
+  font-size: 10pt;
+}
+
+.decls > dd > p {
+  margin-bottom: 8px;
+}
+
+.decls > dd > dl:not(.decls):not(:first-child) {
+  padding-top: 5px;
+  border-top: 1px solid #eee;
+}
+
+.decls > dd > dl:not(.decls) > dt {
+  display: block;
+  min-width: 70px;
+  float: left;
+  font-weight: bold;
+}
+
+.decls > dd > dl:not(.decls) > dd {
+  margin-bottom: 2px;
+}
+
+.fixity {
+  font-style: italic;
+  font-weight: normal !important;
+}
+
+dd.fixity {
+  cursor: default;
+}
+
+.word {
+  display: table-cell;
+  white-space: nowrap;
+  width: 0;
+}
+
+.signature {
+  display: table-cell;
+  width: 100%;
+}
+
+.name {
+  white-space: nowrap;
+  width: 0;
+}
+
+.documented,
+.name {
+  cursor: default;
+}
+
+.documented {
+  font-weight: bold;
+}
+
+/* The following colours are taken from the conservative 8 color palette given
+   in http://mkweb.bcgsc.ca/colorblind/palettes.mhtml
+*/
+
+a.function {
+  color: #359b73;
+}
+
+.function {
+  color: #359b73;
+}
+
+a.constructor {
+  color: #d55e;
+}
+
+.constructor {
+  color: #d55e;
+}
+
+a.type {
+  color: #3db7e9;
+}
+
+.type {
+  color: #3db7e9;
+}
+
+.keyword {
+  color: inherit;
+}
+
+.boundvar {
+  color: #f748a5;
+}
+
+.boundvar.implicit {
+  text-decoration: underline;
+}
+
+ul.names {
+  border: 1px solid #666;
+}
+
+ul.names li {
+  padding-left: 5px;
+}
+
+ul.names li a {
+  display: inline-block;
+  width: 100%;
+  padding: 2px 0;
+}
+
+ul.names li:nth-child(odd) {
+  background-color: #eeeeef;
+}
+
+ul.names li:nth-child(even) {
+  background-color: white;
+}
+
+body.index .container a:visited {
+  color: #666;
+}
+
+body.index .container a:hover {
+  color: #04819e;
+}
diff --git a/blackandwhite.css b/blackandwhite.css
new file mode 100644
index 0000000..3486cbf
--- /dev/null
+++ b/blackandwhite.css
@@ -0,0 +1,248 @@
+html,
+body {
+  margin: 0;
+  padding: 0;
+  border: 0;
+  height: 100%;
+  font-family: "Trebuchet MS", Helvetica, sans-serif;
+  font-size: 11pt;
+  background-color: #fff;
+}
+
+a,
+a:active,
+a:visited {
+  text-decoration: none;
+  color: inherit;
+}
+
+a:hover {
+  text-decoration: underline;
+}
+
+header {
+  padding: 5px 11px;
+  border-bottom: 3px solid #659fdb;
+  box-shadow: 0 -8px 22px 0;
+  background-color: #252525;
+  color: white;
+  font-size: 9pt;
+}
+
+.wrapper {
+  min-height: 100%;
+}
+
+header nav,
+header strong {
+  font-size: 11pt;
+}
+
+header nav {
+  float: right;
+}
+
+footer {
+  height: 30px;
+  width: 100%;
+  border-top: 1px solid #aaa;
+  margin-top: -31px;
+  text-align: center;
+  color: #666;
+  line-height: 30px;
+  font-size: 9pt;
+  background: none repeat scroll 0 0 #ddd;
+}
+
+.container {
+  padding: 10px 10px 41px 20px;
+}
+
+h1 {
+  margin: 0;
+  margin-bottom: 5px;
+  font-size: 14pt;
+  font-family: "Trebuchet MS", Helvetica, sans-serif;
+}
+
+#module-header {
+  border-bottom: 1px solid #bbb;
+  padding-bottom: 2px;
+}
+
+ul {
+  list-style-type: none;
+  margin: 0;
+  padding: 0;
+}
+
+hr {
+  margin: 0;
+  padding: 0;
+  border: 0;
+  border-bottom: 1px solid #bbb;
+}
+
+p {
+  margin: 0;
+  padding: 0;
+}
+
+pre {
+  display: inline;
+  margin: 0;
+  padding: 0;
+}
+
+.code {
+  font-family: "Lucida Console", Monaco, monospace;
+  font-size: 10pt;
+}
+
+.decls {
+  margin-top: 5px;
+}
+
+.decls > dt {
+  font-family: "Lucida Console", Monaco, monospace;
+  font-size: 10pt;
+  line-height: 20px;
+  padding: 2px 6px;
+  border: 1px solid #ccc;
+  background-color: #f0f0f0;
+  display: table;
+  width: 100%;
+  box-sizing: border-box;
+  white-space: pre-wrap;
+}
+
+.decls > dd {
+  margin: 10px 0 20px 20px;
+  font-family: Arial, sans-serif;
+  font-size: 10pt;
+}
+
+.decls > dd > p {
+  margin-bottom: 8px;
+}
+
+.decls > dd > dl:not(.decls):not(:first-child) {
+  padding-top: 5px;
+  border-top: 1px solid #eee;
+}
+
+.decls > dd > dl:not(.decls) > dt {
+  display: block;
+  min-width: 70px;
+  float: left;
+  font-weight: bold;
+}
+
+.decls > dd > dl:not(.decls) > dd {
+  margin-bottom: 2px;
+}
+
+.fixity {
+  font-style: italic;
+  font-weight: normal !important;
+}
+
+dd.fixity {
+  cursor: default;
+}
+
+.word {
+  display: table-cell;
+  white-space: nowrap;
+  width: 0;
+}
+
+.signature {
+  display: table-cell;
+  width: 100%;
+}
+
+.name {
+  white-space: nowrap;
+  width: 0;
+}
+
+.documented,
+.name {
+  cursor: default;
+  font-weight: normal;
+  font-style: normal;
+  font-variant: normal;
+}
+
+.documented {
+  font-weight: bold;
+}
+
+a.function {
+  font-style: italic;
+}
+
+.function {
+  font-style: italic;
+}
+
+a.constructor {
+  font-weight: bold;
+}
+
+.constructor {
+  font-weight: bold;
+}
+
+a.type {
+  font-variant: small-caps !important;
+}
+
+.type {
+  font-variant: small-caps !important;
+}
+
+.keyword {
+  text-decoration: underline;
+  color: inherit;
+}
+
+.boundvar {
+  color: #bf30bf; /* Too much colour makes it hard to differ the rest of the colours */
+  color: inherit;
+}
+
+.boundvar.implicit {
+  text-decoration: underline;
+}
+
+ul.names {
+  border: 1px solid #666;
+}
+
+ul.names li {
+  padding-left: 5px;
+}
+
+ul.names li a {
+  display: inline-block;
+  width: 100%;
+  padding: 2px 0;
+}
+
+ul.names li:nth-child(odd) {
+  background-color: #eeeeef;
+}
+
+ul.names li:nth-child(even) {
+  background-color: white;
+}
+
+body.index .container a:visited {
+  color: #666;
+}
+
+body.index .container a:hover {
+  color: #04819e;
+}
diff --git a/styles.css b/default.css
similarity index 95%
rename from styles.css
rename to default.css
index 916ca7c..306aaea 100644
--- a/styles.css
+++ b/default.css
@@ -65,7 +65,7 @@ h1 {
   font-family: "Trebuchet MS", Helvetica, sans-serif;
 }
 
-#moduleHeader {
+#module-header {
   border-bottom: 1px solid #bbb;
   padding-bottom: 2px;
 }
@@ -88,6 +88,12 @@ p {
   padding: 0;
 }
 
+pre {
+  display: inline;
+  margin: 0;
+  padding: 0;
+}
+
 .code {
   font-family: "Lucida Console", Monaco, monospace;
   font-size: 10pt;
@@ -195,12 +201,11 @@ a.type {
 }
 
 .keyword {
-  color: inherit;
+  color: #999;
 }
 
 .boundvar {
-  color: #bf30bf; /* Too much colour makes it hard to differ the rest of the colours */
-  color: inherit;
+  color: #bf30bf;
 }
 
 .boundvar.implicit {
diff --git a/docs/Collie.Core.html b/docs/Collie.Core.html
index 75b7ee7..d394bd4 100644
--- a/docs/Collie.Core.html
+++ b/docs/Collie.Core.html
@@ -1 +1,64 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>Collie.Core</title><link rel="stylesheet" href="../styles.css"></head><body class="namespace"><header><strong>Idris2Doc</strong> : Collie.Core<nav><a href="../index.html">Index</a></nav></header><div class="container"><div id="moduleHeader"><h1>Collie.Core</h1><p></p></div><dl class="decls"><dt id="Collie.Core.Any"><!-- ann ignored START -->data<!-- ann END -->&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Any"><span class="name type">Any</span></a>&ensp;:&ensp;((0&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;:&ensp;<span class="name type">String</span>)&ensp;-&gt;&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span>)&ensp;-&gt;&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Constructors</b>:<br><dl class="decls">  <dt id="Collie.Core.Here"><a class="type" href="Collie.Core.html#Collie.Core.Here"><span class="name constructor">Here</span></a>&ensp;:&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Any"><span class="name type">Any</span></a>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END --></dt>  <dt id="Collie.Core.There"><a class="type" href="Collie.Core.html#Collie.Core.There"><span class="name constructor">There</span></a>&ensp;:&ensp;(<!-- ann ignored START -->pos<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.IsField"><span class="name function">IsField</span></a>&ensp;<!-- ann ignored START -->c<!-- ann END -->&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Collie.Core.Command.(.subcommands)"><span class="name function">.subcommands</span></span>))&ensp;-&gt;&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Any"><span class="name type">Any</span></a>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;(<span class="type resolved" title="Builtin.DPair.DPair.snd"><span class="name function">snd</span></span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.field"><span class="name function">field</span></a>&ensp;<!-- ann ignored START -->pos<!-- ann END -->))&ensp;-&gt;&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Any"><span class="name type">Any</span></a>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END --></dt></dl></dd><dt id="Collie.Core.Command"><!-- ann ignored START -->record<!-- ann END -->&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Collie.Core.MkCommand"><a class="type" href="Collie.Core.html#Collie.Core.MkCommand"><span class="name constructor">MkCommand</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;-&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;-&gt;&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;-&gt;&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<!-- ann ignored START -->name<!-- ann END --></dt></dl><br>  <b>Projections</b>:<br><dl class="decls">  <dt id="Collie.Core.Command.(.arguments)"><span class="type resolved" title="Collie.Core.Command.(.arguments)"><span class="name function">arguments</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<!-- ann ignored START -->name<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></dt>  <dt id="Collie.Core.Command.(.description)"><span class="type resolved" title="Collie.Core.Command.(.description)"><span class="name function">description</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<!-- ann ignored START -->name<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">String</span></dt>  <dt id="Collie.Core.Command.(.modifiers)"><span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">modifiers</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<!-- ann ignored START -->name<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a></dt>  <dt id="Collie.Core.Command.(.subcommands)"><span class="type resolved" title="Collie.Core.Command.(.subcommands)"><span class="name function">subcommands</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<!-- ann ignored START -->name<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a></dt></dl></dd><dt id="Collie.Core.ParseTree"><a class="type" href="Collie.Core.html#Collie.Core.ParseTree"><span class="name function">ParseTree</span></a>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Core.ParseTreeT"><a class="type" href="Collie.Core.html#Collie.Core.ParseTreeT"><span class="name function">ParseTreeT</span></a>&ensp;:&ensp;(<span class="name type">Type</span>&ensp;-&gt;&ensp;<span class="name type">Type</span>)&ensp;-&gt;&ensp;(<span class="name type">Type</span>&ensp;-&gt;&ensp;<span class="name type">Type</span>)&ensp;-&gt;&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Core.ParsedCommand"><!-- ann ignored START -->record<!-- ann END -->&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;:&ensp;(0&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;:&ensp;<span class="name type">String</span>)&ensp;-&gt;&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Collie.Core.MkParsedCommand"><a class="type" href="Collie.Core.html#Collie.Core.MkParsedCommand"><span class="name constructor">MkParsedCommand</span></a>&ensp;:&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiers"><span class="name function">ParsedModifiers</span></a>&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">.modifiers</span></span>)&ensp;-&gt;&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArguments"><span class="name function">ParsedArguments</span></a>&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Collie.Core.Command.(.arguments)"><span class="name function">.arguments</span></span>)&ensp;-&gt;&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END --></dt></dl><br>  <b>Projections</b>:<br><dl class="decls">  <dt id="Collie.Core.ParsedCommand.(.arguments)"><span class="type resolved" title="Collie.Core.ParsedCommand.(.arguments)"><span class="name function">arguments</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArguments"><span class="name function">ParsedArguments</span></a>&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Collie.Core.Command.(.arguments)"><span class="name function">.arguments</span></span>)</dt>  <dt id="Collie.Core.ParsedCommand.(.modifiers)"><span class="type resolved" title="Collie.Core.ParsedCommand.(.modifiers)"><span class="name function">modifiers</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiers"><span class="name function">ParsedModifiers</span></a>&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">.modifiers</span></span>)</dt></dl></dd><dt id="Collie.Core.ParsedCommandT"><!-- ann ignored START -->record<!-- ann END -->&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;:&ensp;(<span class="name type">Type</span>&ensp;-&gt;&ensp;<span class="name type">Type</span>)&ensp;-&gt;&ensp;(<span class="name type">Type</span>&ensp;-&gt;&ensp;<span class="name type">Type</span>)&ensp;-&gt;&ensp;(0&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;:&ensp;<span class="name type">String</span>)&ensp;-&gt;&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Collie.Core.MkParsedCommandT"><a class="type" href="Collie.Core.html#Collie.Core.MkParsedCommandT"><span class="name constructor">MkParsedCommandT</span></a>&ensp;:&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;<!-- ann ignored START -->f<!-- ann END -->&ensp;<!-- ann ignored START -->g<!-- ann END -->&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">.modifiers</span></span>)&ensp;-&gt;&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArgumentsT"><span class="name function">ParsedArgumentsT</span></a>&ensp;<!-- ann ignored START -->g<!-- ann END -->&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Collie.Core.Command.(.arguments)"><span class="name function">.arguments</span></span>)&ensp;-&gt;&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<!-- ann ignored START -->f<!-- ann END -->&ensp;<!-- ann ignored START -->g<!-- ann END -->&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END --></dt></dl><br>  <b>Projections</b>:<br><dl class="decls">  <dt id="Collie.Core.ParsedCommandT.(.arguments)"><span class="type resolved" title="Collie.Core.ParsedCommandT.(.arguments)"><span class="name function">arguments</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<!-- ann ignored START -->f<!-- ann END -->&ensp;<!-- ann ignored START -->g<!-- ann END -->&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArgumentsT"><span class="name function">ParsedArgumentsT</span></a>&ensp;<!-- ann ignored START -->g<!-- ann END -->&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Collie.Core.Command.(.arguments)"><span class="name function">.arguments</span></span>)</dt>  <dt id="Collie.Core.ParsedCommandT.(.modifiers)"><span class="type resolved" title="Collie.Core.ParsedCommandT.(.modifiers)"><span class="name function">modifiers</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<!-- ann ignored START -->f<!-- ann END -->&ensp;<!-- ann ignored START -->g<!-- ann END -->&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;<!-- ann ignored START -->f<!-- ann END -->&ensp;<!-- ann ignored START -->g<!-- ann END -->&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">.modifiers</span></span>)</dt></dl></dd><dt id="Collie.Core.basic"><a class="type" href="Collie.Core.html#Collie.Core.basic"><span class="name function">basic</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;-&gt;&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<!-- ann ignored START -->cmdName<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Core.initParsedCommand"><a class="type" href="Collie.Core.html#Collie.Core.initParsedCommand"><span class="name function">initParsedCommand</span></a>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Core.lookup"><a class="type" href="Collie.Core.html#Collie.Core.lookup"><span class="name function">lookup</span></a>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Any"><span class="name type">Any</span></a>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->c<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Builtin.DPair.DPair"><span class="name type">DPair</span></span>&ensp;<span class="name type">String</span>&ensp;(\<!-- ann ignored START -->nm<!-- ann END -->&ensp;=&gt;&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total</dd></dl></div><footer>Produced by Idris 2 version 0.4.0-c86184575</footer></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="en">
+
+<head>
+  <meta charset="utf-8">
+  <title>Collie.Core</title>
+  <link rel="stylesheet" type="text/css" id="preferredStyle" href="../default.css">
+  <script>
+    /* Updates the stylesheet to use the preferred one.
+       Note that we set the link to root ++ sourceLoc because the config
+       is shared across the whole website, so the root may differ from
+       page to page.
+    */
+    function setStyleSource (sourceLoc) {
+      document.getElementById("preferredStyle").href = "../" + sourceLoc + ".css";
+      document.getElementById("selectPreferredStyle").value = sourceLoc;
+    }
+    /* Initialises the preferred style sheet:
+       1. if there is a stored value then use that
+          otherwise select the default
+       2. set both the css link href & the drop down menu selected option
+    */
+    function initStyleSource () {
+      var preferredStyle = localStorage.getItem("stylefile");
+      if (preferredStyle !== null) {
+        setStyleSource(preferredStyle);
+      } else {
+        setStyleSource("default");
+      };
+    }
+    function saveStyleSource (preferredStyle) {
+      localStorage.stylefile = preferredStyle;
+    }
+    </script>
+</head>
+
+<body class="namespace">
+<header>
+  <strong>Idris2Doc</strong> : Collie.Core
+  <nav><a href="../index.html">Index</a>
+
+  <select id="selectPreferredStyle">
+    <option value="default">Default</option>
+<option value="alternative">Alternative</option>
+<option value="blackandwhite">Black & White</option>
+
+  </select>
+  </nav>
+
+  <script>
+  /* We start by initialising the style source */
+  initStyleSource();
+
+  /* This listens for changes on the drop down menu and updates the
+     css used for the current page when a selection is made.
+  */
+  document.getElementById("selectPreferredStyle").addEventListener("change", function(){
+    var selected = this.options[this.selectedIndex].value; /* the option chosen */
+    setStyleSource (selected);
+    saveStyleSource (selected);
+  });
+</script>
+
+</header>
+<div class="container"><div id="module-header"><h1>Collie.Core</h1><pre></pre></div><h2>Reexports</h2><code><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Collie.Options.Domain<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Collie.Options.Usual<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Collie.Modifiers<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Data.Record<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Data.Record.SmartConstructors<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Data.Vect<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Data.DPair<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Data.Magma<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Syntax.WithProof<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Decidable.Decidable<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Decidable.Decidable.Extra1</code><h2>Definitions</h2><dl class="decls"><dt id="Collie.Core.Command"><code><span class="keyword">record</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Collie.Core.MkCommand"><code><a class="type" href="Collie.Core.html#Collie.Core.MkCommand"><span class="name constructor">MkCommand</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">name</span></code></dt></dl><br>  <b>Projections</b>:<br><dl class="decls">  <dt id="Collie.Core.Command.(.arguments)"><code><span class="type resolved" title="Collie.Core.Command.(.arguments)"><span class="name function">.arguments</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">name</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></code></dt>  <dt id="Collie.Core.Command.(.description)"><code><span class="type resolved" title="Collie.Core.Command.(.description)"><span class="name function">.description</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">name</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">String</span></code></dt>  <dt id="Collie.Core.Command.(.modifiers)"><code><span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">.modifiers</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">name</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a></code></dt>  <dt id="Collie.Core.Command.(.subcommands)"><code><span class="type resolved" title="Collie.Core.Command.(.subcommands)"><span class="name function">.subcommands</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">name</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a></code></dt></dl></dd><dt id="Collie.Core.Command.(.description)"><code><span class="type resolved" title="Collie.Core.Command.(.description)"><span class="name function">.description</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">name</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">String</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.Command.description"><code><span class="type resolved" title="Collie.Core.Command.description"><span class="name function">description</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">name</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">String</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.Command.(.subcommands)"><code><span class="type resolved" title="Collie.Core.Command.(.subcommands)"><span class="name function">.subcommands</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">name</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.Command.subcommands"><code><span class="type resolved" title="Collie.Core.Command.subcommands"><span class="name function">subcommands</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">name</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.Command.(.modifiers)"><code><span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">.modifiers</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">name</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.Command.modifiers"><code><span class="type resolved" title="Collie.Core.Command.modifiers"><span class="name function">modifiers</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">name</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.Command.(.arguments)"><code><span class="type resolved" title="Collie.Core.Command.(.arguments)"><span class="name function">.arguments</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">name</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.Command.arguments"><code><span class="type resolved" title="Collie.Core.Command.arguments"><span class="name function">arguments</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">name</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.basic"><code><a class="type" href="Collie.Core.html#Collie.Core.basic"><span class="name function">basic</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">cmdName</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.Any"><code><span class="keyword">data</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Any"><span class="name type">Any</span></a>&ensp;:&ensp;((<span class="keyword">0</span>&ensp;<span class="boundvar">nm</span>&ensp;:&ensp;<span class="name type">String</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructors</b>:<br><dl class="decls">  <dt id="Collie.Core.Here"><code><a class="type" href="Collie.Core.html#Collie.Core.Here"><span class="name constructor">Here</span></a>&ensp;:&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Any"><span class="name type">Any</span></a>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">cmd</span></code></dt>  <dt id="Collie.Core.There"><code><a class="type" href="Collie.Core.html#Collie.Core.There"><span class="name constructor">There</span></a>&ensp;:&ensp;(<span class="boundvar">pos</span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.IsField"><span class="name function">IsField</span></a>&ensp;<span class="boundvar">c</span>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.subcommands)"><span class="name function">.subcommands</span></span>))&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Any"><span class="name type">Any</span></a>&ensp;<span class="boundvar">p</span>&ensp;(<span class="type resolved" title="Builtin.DPair.DPair.snd"><span class="name function">snd</span></span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.field"><span class="name function">field</span></a>&ensp;<span class="boundvar">pos</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Any"><span class="name type">Any</span></a>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">cmd</span></code></dt></dl></dd><dt id="Collie.Core.Any.map"><code><span class="type resolved" title="Collie.Core.Any.map"><span class="name function">map</span></span>&ensp;:&ensp;((<span class="boundvar">cmd</span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">nm</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">q</span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Any"><span class="name type">Any</span></a>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Any"><span class="name type">Any</span></a>&ensp;<span class="boundvar">q</span>&ensp;<span class="boundvar">cmd</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.Any.traverse"><code><span class="type resolved" title="Collie.Core.Any.traverse"><span class="name function">traverse</span></span>&ensp;:&ensp;<span class="type resolved" title="Prelude.Interfaces.Applicative"><span class="name type">Applicative</span></span>&ensp;<span class="boundvar">m</span>&ensp;<span class="keyword">=&gt;</span>&ensp;((<span class="boundvar">cmd</span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">nm</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">m</span>&ensp;(<span class="boundvar">q</span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Any"><span class="name type">Any</span></a>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">m</span>&ensp;(<a class="type" href="Collie.Core.html#Collie.Core.Any"><span class="name type">Any</span></a>&ensp;<span class="boundvar">q</span>&ensp;<span class="boundvar">cmd</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.ParsedCommandT"><code><span class="keyword">record</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;:&ensp;(<span class="name type">Type</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="name type">Type</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="keyword">0</span>&ensp;<span class="boundvar">nm</span>&ensp;:&ensp;<span class="name type">String</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Collie.Core.MkParsedCommandT"><code><a class="type" href="Collie.Core.html#Collie.Core.MkParsedCommandT"><span class="name constructor">MkParsedCommandT</span></a>&ensp;:&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">g</span>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">.modifiers</span></span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArgumentsT"><span class="name function">ParsedArgumentsT</span></a>&ensp;<span class="boundvar">g</span>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.arguments)"><span class="name function">.arguments</span></span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">g</span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span></code></dt></dl><br>  <b>Projections</b>:<br><dl class="decls">  <dt id="Collie.Core.ParsedCommandT.(.arguments)"><code><span class="type resolved" title="Collie.Core.ParsedCommandT.(.arguments)"><span class="name function">.arguments</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">g</span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArgumentsT"><span class="name function">ParsedArgumentsT</span></a>&ensp;<span class="boundvar">g</span>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.arguments)"><span class="name function">.arguments</span></span>)</code></dt>  <dt id="Collie.Core.ParsedCommandT.(.modifiers)"><code><span class="type resolved" title="Collie.Core.ParsedCommandT.(.modifiers)"><span class="name function">.modifiers</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">g</span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">g</span>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">.modifiers</span></span>)</code></dt></dl></dd><dt id="Collie.Core.ParsedCommandT.(.modifiers)"><code><span class="type resolved" title="Collie.Core.ParsedCommandT.(.modifiers)"><span class="name function">.modifiers</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">g</span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">g</span>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">.modifiers</span></span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.ParsedCommandT.modifiers"><code><span class="type resolved" title="Collie.Core.ParsedCommandT.modifiers"><span class="name function">modifiers</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">g</span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">g</span>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">.modifiers</span></span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.ParsedCommandT.(.arguments)"><code><span class="type resolved" title="Collie.Core.ParsedCommandT.(.arguments)"><span class="name function">.arguments</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">g</span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArgumentsT"><span class="name function">ParsedArgumentsT</span></a>&ensp;<span class="boundvar">g</span>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.arguments)"><span class="name function">.arguments</span></span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.ParsedCommandT.arguments"><code><span class="type resolved" title="Collie.Core.ParsedCommandT.arguments"><span class="name function">arguments</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">g</span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArgumentsT"><span class="name function">ParsedArgumentsT</span></a>&ensp;<span class="boundvar">g</span>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.arguments)"><span class="name function">.arguments</span></span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.ParsedCommand"><code><span class="keyword">record</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;:&ensp;(<span class="keyword">0</span>&ensp;<span class="boundvar">nm</span>&ensp;:&ensp;<span class="name type">String</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Collie.Core.MkParsedCommand"><code><a class="type" href="Collie.Core.html#Collie.Core.MkParsedCommand"><span class="name constructor">MkParsedCommand</span></a>&ensp;:&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiers"><span class="name function">ParsedModifiers</span></a>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">.modifiers</span></span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArguments"><span class="name function">ParsedArguments</span></a>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.arguments)"><span class="name function">.arguments</span></span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span></code></dt></dl><br>  <b>Projections</b>:<br><dl class="decls">  <dt id="Collie.Core.ParsedCommand.(.arguments)"><code><span class="type resolved" title="Collie.Core.ParsedCommand.(.arguments)"><span class="name function">.arguments</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArguments"><span class="name function">ParsedArguments</span></a>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.arguments)"><span class="name function">.arguments</span></span>)</code></dt>  <dt id="Collie.Core.ParsedCommand.(.modifiers)"><code><span class="type resolved" title="Collie.Core.ParsedCommand.(.modifiers)"><span class="name function">.modifiers</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiers"><span class="name function">ParsedModifiers</span></a>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">.modifiers</span></span>)</code></dt></dl></dd><dt id="Collie.Core.ParsedCommand.(.modifiers)"><code><span class="type resolved" title="Collie.Core.ParsedCommand.(.modifiers)"><span class="name function">.modifiers</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiers"><span class="name function">ParsedModifiers</span></a>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">.modifiers</span></span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.ParsedCommand.modifiers"><code><span class="type resolved" title="Collie.Core.ParsedCommand.modifiers"><span class="name function">modifiers</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiers"><span class="name function">ParsedModifiers</span></a>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">.modifiers</span></span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.ParsedCommand.(.arguments)"><code><span class="type resolved" title="Collie.Core.ParsedCommand.(.arguments)"><span class="name function">.arguments</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArguments"><span class="name function">ParsedArguments</span></a>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.arguments)"><span class="name function">.arguments</span></span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.ParsedCommand.arguments"><code><span class="type resolved" title="Collie.Core.ParsedCommand.arguments"><span class="name function">arguments</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArguments"><span class="name function">ParsedArguments</span></a>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.arguments)"><span class="name function">.arguments</span></span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.ParsedCommand.defaulting"><code><span class="type resolved" title="Collie.Core.ParsedCommand.defaulting"><span class="name function">defaulting</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="type resolved" title="Prelude.Basics.id"><span class="name function">id</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.ParsedCommand.finalising"><code><span class="type resolved" title="Collie.Core.ParsedCommand.finalising"><span class="name function">finalising</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.ParseTreeT"><code><a class="type" href="Collie.Core.html#Collie.Core.ParseTreeT"><span class="name function">ParseTreeT</span></a>&ensp;:&ensp;(<span class="name type">Type</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="name type">Type</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.ParseTree"><code><a class="type" href="Collie.Core.html#Collie.Core.ParseTree"><span class="name function">ParseTree</span></a>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.ParsedTree.defaulting"><code><span class="type resolved" title="Collie.Core.ParsedTree.defaulting"><span class="name function">defaulting</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParseTreeT"><span class="name function">ParseTreeT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParseTreeT"><span class="name function">ParseTreeT</span></a>&ensp;<span class="type resolved" title="Prelude.Basics.id"><span class="name function">id</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">cmd</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.ParsedTree.finalising"><code><span class="type resolved" title="Collie.Core.ParsedTree.finalising"><span class="name function">finalising</span></span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParseTreeT"><span class="name function">ParseTreeT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Core.html#Collie.Core.ParseTree"><span class="name function">ParseTree</span></a>&ensp;<span class="boundvar">cmd</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.lookup"><code><a class="type" href="Collie.Core.html#Collie.Core.lookup"><span class="name function">lookup</span></a>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Any"><span class="name type">Any</span></a>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">c</span>&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">nm</span>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">**</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">nm</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.(.update)"><code><a class="type" href="Collie.Core.html#Collie.Core.(.update)"><span class="name function">.update</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArgumentsT"><span class="name function">ParsedArgumentsT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">arg</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArgumentsT"><span class="name function">ParsedArgumentsT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">arg</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.(.parse)"><code><a class="type" href="Collie.Core.html#Collie.Core.(.parse)"><span class="name function">.parse</span></a>&ensp;:&ensp;(<span class="boundvar">args</span>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArgumentsT"><span class="name function">ParsedArgumentsT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">args</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Basics.List"><span class="name type">List</span></span>&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArgumentsT"><span class="name function">ParsedArgumentsT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">args</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Core.initParsedCommand"><code><a class="type" href="Collie.Core.html#Collie.Core.initParsedCommand"><span class="name function">initParsedCommand</span></a>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd></dl></div><footer>Produced by Idris 2 version 0.7.0</footer></body></html>
\ No newline at end of file
diff --git a/docs/Collie.Error.html b/docs/Collie.Error.html
index 59fac54..d35114c 100644
--- a/docs/Collie.Error.html
+++ b/docs/Collie.Error.html
@@ -1 +1,64 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>Collie.Error</title><link rel="stylesheet" href="../styles.css"></head><body class="namespace"><header><strong>Idris2Doc</strong> : Collie.Error<nav><a href="../index.html">Index</a></nav></header><div class="container"><div id="moduleHeader"><h1>Collie.Error</h1><p></p></div><dl class="decls"><dt id="Collie.Error.&gt;&gt;="><a class="type" href="Collie.Error.html#Collie.Error.&gt;&gt;="><span class="name function">(&gt;&gt;=)</span></a>&ensp;:&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;(<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;<!-- ann ignored START -->b<!-- ann END -->)&ensp;-&gt;&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;<!-- ann ignored START -->b<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Fixity Declaration</b>:&ensp;infixl&ensp;operator,&ensp;level&ensp;1</dd><dt id="Collie.Error.Error"><!-- ann ignored START -->data<!-- ann END -->&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;:&ensp;<span class="name type">Type</span>&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Constructors</b>:<br><dl class="decls">  <dt id="Collie.Error.Fail"><a class="type" href="Collie.Error.html#Collie.Error.Fail"><span class="name constructor">Fail</span></a>&ensp;:&ensp;<span class="type resolved" title="Data.List1.List1"><span class="name type">List1</span></span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a>&ensp;-&gt;&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END --></dt>  <dt id="Collie.Error.Pure"><a class="type" href="Collie.Error.html#Collie.Error.Pure"><span class="name constructor">Pure</span></a>&ensp;:&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END --></dt></dl></dd><dt id="Collie.Error.ErrorMsg"><!-- ann ignored START -->data<!-- ann END -->&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a>&ensp;:&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Constructors</b>:<br><dl class="decls">  <dt id="Collie.Error.CouldNotParse"><a class="type" href="Collie.Error.html#Collie.Error.CouldNotParse"><span class="name constructor">CouldNotParse</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a></dt>  <dt id="Collie.Error.MissingOption"><a class="type" href="Collie.Error.html#Collie.Error.MissingOption"><span class="name constructor">MissingOption</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a></dt>  <dt id="Collie.Error.MissingArgument"><a class="type" href="Collie.Error.html#Collie.Error.MissingArgument"><span class="name constructor">MissingArgument</span></a>&ensp;:&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a></dt>  <dt id="Collie.Error.OptionSetTwice"><a class="type" href="Collie.Error.html#Collie.Error.OptionSetTwice"><span class="name constructor">OptionSetTwice</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a></dt>  <dt id="Collie.Error.TooManyArguments"><a class="type" href="Collie.Error.html#Collie.Error.TooManyArguments"><span class="name constructor">TooManyArguments</span></a>&ensp;:&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a></dt>  <dt id="Collie.Error.MissingOptArg"><a class="type" href="Collie.Error.html#Collie.Error.MissingOptArg"><span class="name constructor">MissingOptArg</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a></dt></dl></dd><dt id="Collie.Error.exitWith"><a class="type" href="Collie.Error.html#Collie.Error.exitWith"><span class="name function">exitWith</span></a>&ensp;:&ensp;<span class="type resolved" title="Data.List1.List1"><span class="name type">List1</span></span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a>&ensp;-&gt;&ensp;<span class="type resolved" title="PrimIO.IO"><span class="name type">IO</span></span>&ensp;<!-- ann ignored START -->a<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Error.fromEither"><a class="type" href="Collie.Error.html#Collie.Error.fromEither"><span class="name function">fromEither</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Types.Either"><span class="name type">Either</span></span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Error.throwE"><a class="type" href="Collie.Error.html#Collie.Error.throwE"><span class="name function">throwE</span></a>&ensp;:&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a>&ensp;-&gt;&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd></dl></div><footer>Produced by Idris 2 version 0.4.0-c86184575</footer></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="en">
+
+<head>
+  <meta charset="utf-8">
+  <title>Collie.Error</title>
+  <link rel="stylesheet" type="text/css" id="preferredStyle" href="../default.css">
+  <script>
+    /* Updates the stylesheet to use the preferred one.
+       Note that we set the link to root ++ sourceLoc because the config
+       is shared across the whole website, so the root may differ from
+       page to page.
+    */
+    function setStyleSource (sourceLoc) {
+      document.getElementById("preferredStyle").href = "../" + sourceLoc + ".css";
+      document.getElementById("selectPreferredStyle").value = sourceLoc;
+    }
+    /* Initialises the preferred style sheet:
+       1. if there is a stored value then use that
+          otherwise select the default
+       2. set both the css link href & the drop down menu selected option
+    */
+    function initStyleSource () {
+      var preferredStyle = localStorage.getItem("stylefile");
+      if (preferredStyle !== null) {
+        setStyleSource(preferredStyle);
+      } else {
+        setStyleSource("default");
+      };
+    }
+    function saveStyleSource (preferredStyle) {
+      localStorage.stylefile = preferredStyle;
+    }
+    </script>
+</head>
+
+<body class="namespace">
+<header>
+  <strong>Idris2Doc</strong> : Collie.Error
+  <nav><a href="../index.html">Index</a>
+
+  <select id="selectPreferredStyle">
+    <option value="default">Default</option>
+<option value="alternative">Alternative</option>
+<option value="blackandwhite">Black & White</option>
+
+  </select>
+  </nav>
+
+  <script>
+  /* We start by initialising the style source */
+  initStyleSource();
+
+  /* This listens for changes on the drop down menu and updates the
+     css used for the current page when a selection is made.
+  */
+  document.getElementById("selectPreferredStyle").addEventListener("change", function(){
+    var selected = this.options[this.selectedIndex].value; /* the option chosen */
+    setStyleSource (selected);
+    saveStyleSource (selected);
+  });
+</script>
+
+</header>
+<div class="container"><div id="module-header"><h1>Collie.Error</h1><pre></pre></div><code></code><h2>Definitions</h2><dl class="decls"><dt id="Collie.Error.ErrorMsg"><code><span class="keyword">data</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a>&ensp;:&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructors</b>:<br><dl class="decls">  <dt id="Collie.Error.CouldNotParse"><code><a class="type" href="Collie.Error.html#Collie.Error.CouldNotParse"><span class="name constructor">CouldNotParse</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a></code></dt>  <dt id="Collie.Error.MissingOption"><code><a class="type" href="Collie.Error.html#Collie.Error.MissingOption"><span class="name constructor">MissingOption</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a></code></dt>  <dt id="Collie.Error.MissingArgument"><code><a class="type" href="Collie.Error.html#Collie.Error.MissingArgument"><span class="name constructor">MissingArgument</span></a>&ensp;:&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a></code></dt>  <dt id="Collie.Error.OptionSetTwice"><code><a class="type" href="Collie.Error.html#Collie.Error.OptionSetTwice"><span class="name constructor">OptionSetTwice</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a></code></dt>  <dt id="Collie.Error.TooManyArguments"><code><a class="type" href="Collie.Error.html#Collie.Error.TooManyArguments"><span class="name constructor">TooManyArguments</span></a>&ensp;:&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a></code></dt>  <dt id="Collie.Error.MissingOptArg"><code><a class="type" href="Collie.Error.html#Collie.Error.MissingOptArg"><span class="name constructor">MissingOptArg</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a></code></dt></dl><br>  <b>Hint</b>:&ensp;<dl class="decls"><dt id="$resolved6670"><code><span class="type resolved" title="Prelude.Show.Show"><span class="name type">Show</span></span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a></code></dt></dl></dd><dt id="Collie.Error.Error"><code><span class="keyword">data</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;:&ensp;<span class="name type">Type</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructors</b>:<br><dl class="decls">  <dt id="Collie.Error.Fail"><code><a class="type" href="Collie.Error.html#Collie.Error.Fail"><span class="name constructor">Fail</span></a>&ensp;:&ensp;<span class="type resolved" title="Data.List1.List1"><span class="name type">List1</span></span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;<span class="boundvar">a</span></code></dt>  <dt id="Collie.Error.Pure"><code><a class="type" href="Collie.Error.html#Collie.Error.Pure"><span class="name constructor">Pure</span></a>&ensp;:&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;<span class="boundvar">a</span></code></dt></dl><br>  <b>Hints</b>:<br><dl class="decls">  <dt id="$resolved6673"><code><span class="type resolved" title="Prelude.Interfaces.Applicative"><span class="name type">Applicative</span></span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a></code></dt>  <dt id="$resolved6672"><code><span class="type resolved" title="Prelude.Interfaces.Functor"><span class="name type">Functor</span></span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a></code></dt>  <dt id="$resolved6671"><code><span class="type resolved" title="Prelude.Show.Show"><span class="name type">Show</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">=&gt;</span>&ensp;<span class="type resolved" title="Prelude.Show.Show"><span class="name type">Show</span></span>&ensp;(<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;<span class="boundvar">a</span>)</code></dt></dl></dd><dt id="Collie.Error.throwE"><code><a class="type" href="Collie.Error.html#Collie.Error.throwE"><span class="name function">throwE</span></a>&ensp;:&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;<span class="boundvar">a</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">export</span></dd><dt id="Collie.Error.fromEither"><code><a class="type" href="Collie.Error.html#Collie.Error.fromEither"><span class="name function">fromEither</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Types.Either"><span class="name type">Either</span></span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;<span class="boundvar">a</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">export</span></dd><dt id="Collie.Error.(&gt;&gt;=)"><code><a class="type" href="Collie.Error.html#Collie.Error.(&gt;&gt;=)"><span class="name function">(&gt;&gt;=)</span></a>&ensp;:&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;<span class="boundvar">b</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;<span class="boundvar">b</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">export</span><br>  <b>Fixity Declaration</b>:&ensp;infixl&ensp;operator,&ensp;level&ensp;1</dd><dt id="Collie.Error.exitWith"><code><a class="type" href="Collie.Error.html#Collie.Error.exitWith"><span class="name function">exitWith</span></a>&ensp;:&ensp;<span class="type resolved" title="Data.List1.List1"><span class="name type">List1</span></span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="PrimIO.IO"><span class="name type">IO</span></span>&ensp;<span class="boundvar">a</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">export</span></dd></dl></div><footer>Produced by Idris 2 version 0.7.0</footer></body></html>
\ No newline at end of file
diff --git a/docs/Collie.Modifiers.html b/docs/Collie.Modifiers.html
index 353917f..d85e3ee 100644
--- a/docs/Collie.Modifiers.html
+++ b/docs/Collie.Modifiers.html
@@ -1 +1,64 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>Collie.Modifiers</title><link rel="stylesheet" href="../styles.css"></head><body class="namespace"><header><strong>Idris2Doc</strong> : Collie.Modifiers<nav><a href="../index.html">Index</a></nav></header><div class="container"><div id="moduleHeader"><h1>Collie.Modifiers</h1><p></p></div><dl class="decls"><dt id="Collie.Modifiers.::="><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.::="><span class="name function">(::=)</span></a>&ensp;:&ensp;{0&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;:&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<span class="name type">Type</span>}&ensp;-&gt;&ensp;(<!-- ann ignored START -->nm<!-- ann END -->&ensp;:&ensp;<span class="name type">String</span>)&ensp;-&gt;&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Builtin.DPair.DPair"><span class="name type">DPair</span></span>&ensp;<span class="name type">String</span>&ensp;(\<!-- ann ignored START -->nm<!-- ann END -->&ensp;=&gt;&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->nm<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Fixity Declaration</b>:&ensp;infix&ensp;operator,&ensp;level&ensp;1</dd><dt id="Collie.Modifiers.Flag"><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Flag"><span class="name function">Flag</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;(<span class="type resolved" title="Prelude.Basics.const"><span class="name function">const</span></span>&ensp;<span class="name type">Type</span>)</dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Modifiers.Modifier"><!-- ann ignored START -->data<!-- ann END -->&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Constructors</b>:<br><dl class="decls">  <dt id="Collie.Modifiers.MkFlag"><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.MkFlag"><span class="name constructor">MkFlag</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.snd"><span class="name function">snd</span></span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Flag"><span class="name function">Flag</span></a>&ensp;-&gt;&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END --></dt>  <dt id="Collie.Modifiers.MkOption"><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.MkOption"><span class="name constructor">MkOption</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.snd"><span class="name function">snd</span></span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Option"><span class="name function">Option</span></a>&ensp;-&gt;&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END --></dt></dl></dd><dt id="Collie.Modifiers.Option"><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Option"><span class="name function">Option</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;(<span class="type resolved" title="Prelude.Basics.const"><span class="name function">const</span></span>&ensp;<span class="name type">Type</span>)</dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Modifiers.ParsedModifier"><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifier"><span class="name function">ParsedModifier</span></a>&ensp;:&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Modifiers.ParsedModifierT"><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifierT"><span class="name function">ParsedModifierT</span></a>&ensp;:&ensp;(<span class="name type">Type</span>&ensp;-&gt;&ensp;<span class="name type">Type</span>)&ensp;-&gt;&ensp;(<span class="name type">Type</span>&ensp;-&gt;&ensp;<span class="name type">Type</span>)&ensp;-&gt;&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Modifiers.ParsedModifiers"><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiers"><span class="name function">ParsedModifiers</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Modifiers.ParsedModifiersT"><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;:&ensp;(<span class="name type">Type</span>&ensp;-&gt;&ensp;<span class="name type">Type</span>)&ensp;-&gt;&ensp;(<span class="name type">Type</span>&ensp;-&gt;&ensp;<span class="name type">Type</span>)&ensp;-&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Modifiers.defaulting"><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.defaulting"><span class="name function">defaulting</span></a>&ensp;:&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<!-- ann ignored START -->f<!-- ann END -->&ensp;<!-- ann ignored START -->mods<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;<span class="type resolved" title="Prelude.Basics.id"><span class="name function">id</span></span>&ensp;<!-- ann ignored START -->f<!-- ann END -->&ensp;<!-- ann ignored START -->mods<!-- ann END --></dt><dd>  All&ensp;the&ensp;flags&ensp;have&ensp;a&ensp;default&ensp;value.&ensp;If&ensp;no&ensp;value&ensp;has&ensp;been&ensp;set&ensp;then&ensp;use<br>  that&ensp;default&ensp;instead.<br>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Modifiers.finalising"><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.finalising"><span class="name function">finalising</span></a>&ensp;:&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<!-- ann ignored START -->mods<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiers"><span class="name function">ParsedModifiers</span></a>&ensp;<!-- ann ignored START -->mods<!-- ann END -->)</dt><dd>  Setting&ensp;the&ensp;flags&ensp;to&ensp;their&ensp;default&ensp;value&ensp;and&ensp;ensuring&ensp;that&ensp;the&ensp;required<br>  options&ensp;are&ensp;passed.<br>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Modifiers.flag"><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.flag"><span class="name function">flag</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;{<!-- ann ignored START -->default<!-- ann END -->&ensp;<span class="type resolved" title="Prelude.Basics.False"><span class="name constructor">False</span></span>&ensp;<!-- ann ignored START -->_<!-- ann END -->&ensp;:&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span>}&ensp;-&gt;&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Modifiers.initNothing"><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.initNothing"><span class="name function">initNothing</span></a>&ensp;:&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<!-- ann ignored START -->flds<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Modifiers.option"><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.option"><span class="name function">option</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;-&gt;&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Modifiers.updateModifier"><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.updateModifier"><span class="name function">updateModifier</span></a>&ensp;:&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifierT"><span class="name function">ParsedModifierT</span></a>&ensp;<span class="type resolved" title="Prelude.Basics.id"><span class="name function">id</span></span>&ensp;<span class="type resolved" title="Prelude.Basics.id"><span class="name function">id</span></span>&ensp;<!-- ann ignored START -->mod<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifierT"><span class="name function">ParsedModifierT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<!-- ann ignored START -->mod<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifierT"><span class="name function">ParsedModifierT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<!-- ann ignored START -->mod<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total</dd></dl></div><footer>Produced by Idris 2 version 0.4.0-c86184575</footer></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="en">
+
+<head>
+  <meta charset="utf-8">
+  <title>Collie.Modifiers</title>
+  <link rel="stylesheet" type="text/css" id="preferredStyle" href="../default.css">
+  <script>
+    /* Updates the stylesheet to use the preferred one.
+       Note that we set the link to root ++ sourceLoc because the config
+       is shared across the whole website, so the root may differ from
+       page to page.
+    */
+    function setStyleSource (sourceLoc) {
+      document.getElementById("preferredStyle").href = "../" + sourceLoc + ".css";
+      document.getElementById("selectPreferredStyle").value = sourceLoc;
+    }
+    /* Initialises the preferred style sheet:
+       1. if there is a stored value then use that
+          otherwise select the default
+       2. set both the css link href & the drop down menu selected option
+    */
+    function initStyleSource () {
+      var preferredStyle = localStorage.getItem("stylefile");
+      if (preferredStyle !== null) {
+        setStyleSource(preferredStyle);
+      } else {
+        setStyleSource("default");
+      };
+    }
+    function saveStyleSource (preferredStyle) {
+      localStorage.stylefile = preferredStyle;
+    }
+    </script>
+</head>
+
+<body class="namespace">
+<header>
+  <strong>Idris2Doc</strong> : Collie.Modifiers
+  <nav><a href="../index.html">Index</a>
+
+  <select id="selectPreferredStyle">
+    <option value="default">Default</option>
+<option value="alternative">Alternative</option>
+<option value="blackandwhite">Black & White</option>
+
+  </select>
+  </nav>
+
+  <script>
+  /* We start by initialising the style source */
+  initStyleSource();
+
+  /* This listens for changes on the drop down menu and updates the
+     css used for the current page when a selection is made.
+  */
+  document.getElementById("selectPreferredStyle").addEventListener("change", function(){
+    var selected = this.options[this.selectedIndex].value; /* the option chosen */
+    setStyleSource (selected);
+    saveStyleSource (selected);
+  });
+</script>
+
+</header>
+<div class="container"><div id="module-header"><h1>Collie.Modifiers</h1><pre></pre></div><h2>Reexports</h2><code><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Data.Record<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Collie.Options.Domain<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Collie.Error</code><h2>Definitions</h2><dl class="decls"><dt id="Collie.Modifiers.(::=)"><code><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.(::=)"><span class="name function">(::=)</span></a>&ensp;:&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">a</span>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">nm</span>&ensp;:&ensp;<span class="name type">String</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">nm</span>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">**</span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">nm</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Fixity Declarations</b>:<br>  infix&ensp;operator,&ensp;level&ensp;1<br>infix&ensp;operator,&ensp;level&ensp;1<br>infix&ensp;operator,&ensp;level&ensp;4</dd><dt id="Collie.Modifiers.Flag"><code><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Flag"><span class="name function">Flag</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;(<span class="type resolved" title="Prelude.Basics.const"><span class="name function">const</span></span>&ensp;<span class="name type">Type</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Modifiers.Option"><code><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Option"><span class="name function">Option</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;(<span class="type resolved" title="Prelude.Basics.const"><span class="name function">const</span></span>&ensp;<span class="name type">Type</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Modifiers.Modifier"><code><span class="keyword">data</span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructors</b>:<br><dl class="decls">  <dt id="Collie.Modifiers.MkFlag"><code><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.MkFlag"><span class="name constructor">MkFlag</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.snd"><span class="name function">snd</span></span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Flag"><span class="name function">Flag</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;<span class="boundvar">nm</span></code></dt>  <dt id="Collie.Modifiers.MkOption"><code><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.MkOption"><span class="name constructor">MkOption</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.snd"><span class="name function">snd</span></span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Option"><span class="name function">Option</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;<span class="boundvar">nm</span></code></dt></dl></dd><dt id="Collie.Modifiers.flag"><code><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.flag"><span class="name function">flag</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">default</span>&ensp;<span class="type resolved" title="Prelude.Basics.False"><span class="name constructor">False</span></span>&ensp;<span class="boundvar">_</span>&ensp;:&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span>}&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;<span class="boundvar">nm</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Modifiers.option"><code><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.option"><span class="name function">option</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;<span class="boundvar">nm</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Modifiers.ParsedModifierT"><code><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifierT"><span class="name function">ParsedModifierT</span></a>&ensp;:&ensp;(<span class="name type">Type</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="name type">Type</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Modifiers.ParsedModifier"><code><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifier"><span class="name function">ParsedModifier</span></a>&ensp;:&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Modifiers.ParsedModifiersT"><code><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;:&ensp;(<span class="name type">Type</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="name type">Type</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Modifiers.ParsedModifiers"><code><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiers"><span class="name function">ParsedModifiers</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Modifiers.updateModifier"><code><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.updateModifier"><span class="name function">updateModifier</span></a>&ensp;:&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifierT"><span class="name function">ParsedModifierT</span></a>&ensp;<span class="type resolved" title="Prelude.Basics.id"><span class="name function">id</span></span>&ensp;<span class="type resolved" title="Prelude.Basics.id"><span class="name function">id</span></span>&ensp;<span class="boundvar">mod</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifierT"><span class="name function">ParsedModifierT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">mod</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifierT"><span class="name function">ParsedModifierT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">mod</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Modifiers.(.update)"><code><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.(.update)"><span class="name function">.update</span></a>&ensp;:&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">mods</span>&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">pos</span>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">mods</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifierT"><span class="name function">ParsedModifierT</span></a>&ensp;<span class="type resolved" title="Prelude.Basics.id"><span class="name function">id</span></span>&ensp;<span class="type resolved" title="Prelude.Basics.id"><span class="name function">id</span></span>&ensp;(<span class="type resolved" title="Builtin.DPair.DPair.snd"><span class="name function">snd</span></span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.field"><span class="name function">field</span></a>&ensp;<span class="boundvar">pos</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">mods</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Modifiers.defaulting"><code><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.defaulting"><span class="name function">defaulting</span></a>&ensp;:&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">mods</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;<span class="type resolved" title="Prelude.Basics.id"><span class="name function">id</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">mods</span></code></dt><dd><pre>  All the flags have a default value. If no value has been set then use<br>  that default instead.</pre><br>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Modifiers.Arguments.finalising"><code><span class="type resolved" title="Collie.Modifiers.Arguments.finalising"><span class="name function">finalising</span></span>&ensp;:&ensp;Lazy&ensp;<a class="type" href="Collie.Error.html#Collie.Error.ErrorMsg"><span class="name type">ErrorMsg</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">args</span>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArgumentsT"><span class="name function">ParsedArgumentsT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">args</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArguments"><span class="name function">ParsedArguments</span></a>&ensp;<span class="boundvar">args</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Modifiers.Modifier.finalising"><code><span class="type resolved" title="Collie.Modifiers.Modifier.finalising"><span class="name function">finalising</span></span>&ensp;:&ensp;(<span class="boundvar">mod</span>&ensp;:&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;<span class="boundvar">nm</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifierT"><span class="name function">ParsedModifierT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">mod</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifier"><span class="name function">ParsedModifier</span></a>&ensp;<span class="boundvar">mod</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Modifiers.finalising"><code><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.finalising"><span class="name function">finalising</span></a>&ensp;:&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">mods</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiers"><span class="name function">ParsedModifiers</span></a>&ensp;<span class="boundvar">mods</span>)</code></dt><dd><pre>  Setting the flags to their default value and ensuring that the required<br>  options are passed.</pre><br>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Modifiers.initNothing"><code><a class="type" href="Collie.Modifiers.html#Collie.Modifiers.initNothing"><span class="name function">initNothing</span></a>&ensp;:&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">flds</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd></dl></div><footer>Produced by Idris 2 version 0.7.0</footer></body></html>
\ No newline at end of file
diff --git a/docs/Collie.Options.Domain.html b/docs/Collie.Options.Domain.html
index 4ad12bc..703d0b5 100644
--- a/docs/Collie.Options.Domain.html
+++ b/docs/Collie.Options.Domain.html
@@ -1 +1,64 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>Collie.Options.Domain</title><link rel="stylesheet" href="../styles.css"></head><body class="namespace"><header><strong>Idris2Doc</strong> : Collie.Options.Domain<nav><a href="../index.html">Index</a></nav></header><div class="container"><div id="moduleHeader"><h1>Collie.Options.Domain</h1><p></p></div><dl class="decls"><dt id="Collie.Options.Domain.Arguments"><!-- ann ignored START -->record<!-- ann END -->&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;:&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Collie.Options.Domain.MkArguments"><a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.MkArguments"><span class="name constructor">MkArguments</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span>&ensp;-&gt;&ensp;(<!-- ann ignored START -->domain<!-- ann END -->&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a>)&ensp;-&gt;&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Parser"><span class="name function">Parser</span></a>&ensp;<!-- ann ignored START -->domain<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></dt></dl><br>  <b>Projections</b>:<br><dl class="decls">  <dt id="Collie.Options.Domain.Arguments.(.domain)"><span class="type resolved" title="Collie.Options.Domain.Arguments.(.domain)"><span class="name function">domain</span></span>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;-&gt;&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a></dt>  <dt id="Collie.Options.Domain.Arguments.(.rawParser)"><span class="type resolved" title="Collie.Options.Domain.Arguments.(.rawParser)"><span class="name function">rawParser</span></span>&ensp;:&ensp;(<!-- ann ignored START -->rec<!-- ann END -->&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>)&ensp;-&gt;&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Parser"><span class="name function">Parser</span></a>&ensp;(<span class="type resolved" title="Collie.Options.Domain.Arguments.domain"><span class="name function">domain</span></span>&ensp;<!-- ann ignored START -->rec<!-- ann END -->)</dt>  <dt id="Collie.Options.Domain.Arguments.(.required)"><span class="type resolved" title="Collie.Options.Domain.Arguments.(.required)"><span class="name function">required</span></span>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span></dt></dl></dd><dt id="Collie.Options.Domain.Carrier"><a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Carrier"><span class="name function">Carrier</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a>&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Options.Domain.Domain"><!-- ann ignored START -->data<!-- ann END -->&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a>&ensp;:&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Constructors</b>:<br><dl class="decls">  <dt id="Collie.Options.Domain.Some"><a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Some"><span class="name constructor">Some</span></a>&ensp;:&ensp;<span class="name type">Type</span>&ensp;-&gt;&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a></dt>  <dt id="Collie.Options.Domain.ALot"><a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ALot"><span class="name constructor">ALot</span></a>&ensp;:&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a>&ensp;-&gt;&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a></dt></dl></dd><dt id="Collie.Options.Domain.ParsedArguments"><a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArguments"><span class="name function">ParsedArguments</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Options.Domain.ParsedArgumentsT"><a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArgumentsT"><span class="name function">ParsedArgumentsT</span></a>&ensp;:&ensp;(<span class="name type">Type</span>&ensp;-&gt;&ensp;<span class="name type">Type</span>)&ensp;-&gt;&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Options.Domain.Parser"><a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Parser"><span class="name function">Parser</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a>&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Options.Domain.elimDomain"><a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.elimDomain"><span class="name function">elimDomain</span></a>&ensp;:&ensp;{<!-- ann ignored START -->p<!-- ann END -->&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a>&ensp;-&gt;&ensp;<span class="name type">Type</span>}&ensp;-&gt;&ensp;((<!-- ann ignored START -->d<!-- ann END -->&ensp;:&ensp;<span class="name type">Type</span>)&ensp;-&gt;&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;(<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Some"><span class="name constructor">Some</span></a>&ensp;<!-- ann ignored START -->d<!-- ann END -->))&ensp;-&gt;&ensp;((<!-- ann ignored START -->ds<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a>)&ensp;-&gt;&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;(<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ALot"><span class="name constructor">ALot</span></a>&ensp;<!-- ann ignored START -->ds<!-- ann END -->))&ensp;-&gt;&ensp;(<!-- ann ignored START -->d<!-- ann END -->&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a>)&ensp;-&gt;&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->d<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd></dl></div><footer>Produced by Idris 2 version 0.4.0-c86184575</footer></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="en">
+
+<head>
+  <meta charset="utf-8">
+  <title>Collie.Options.Domain</title>
+  <link rel="stylesheet" type="text/css" id="preferredStyle" href="../default.css">
+  <script>
+    /* Updates the stylesheet to use the preferred one.
+       Note that we set the link to root ++ sourceLoc because the config
+       is shared across the whole website, so the root may differ from
+       page to page.
+    */
+    function setStyleSource (sourceLoc) {
+      document.getElementById("preferredStyle").href = "../" + sourceLoc + ".css";
+      document.getElementById("selectPreferredStyle").value = sourceLoc;
+    }
+    /* Initialises the preferred style sheet:
+       1. if there is a stored value then use that
+          otherwise select the default
+       2. set both the css link href & the drop down menu selected option
+    */
+    function initStyleSource () {
+      var preferredStyle = localStorage.getItem("stylefile");
+      if (preferredStyle !== null) {
+        setStyleSource(preferredStyle);
+      } else {
+        setStyleSource("default");
+      };
+    }
+    function saveStyleSource (preferredStyle) {
+      localStorage.stylefile = preferredStyle;
+    }
+    </script>
+</head>
+
+<body class="namespace">
+<header>
+  <strong>Idris2Doc</strong> : Collie.Options.Domain
+  <nav><a href="../index.html">Index</a>
+
+  <select id="selectPreferredStyle">
+    <option value="default">Default</option>
+<option value="alternative">Alternative</option>
+<option value="blackandwhite">Black & White</option>
+
+  </select>
+  </nav>
+
+  <script>
+  /* We start by initialising the style source */
+  initStyleSource();
+
+  /* This listens for changes on the drop down menu and updates the
+     css used for the current page when a selection is made.
+  */
+  document.getElementById("selectPreferredStyle").addEventListener("change", function(){
+    var selected = this.options[this.selectedIndex].value; /* the option chosen */
+    setStyleSource (selected);
+    saveStyleSource (selected);
+  });
+</script>
+
+</header>
+<div class="container"><div id="module-header"><h1>Collie.Options.Domain</h1><pre></pre></div><code></code><h2>Definitions</h2><dl class="decls"><dt id="Collie.Options.Domain.Domain"><code><span class="keyword">data</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a>&ensp;:&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructors</b>:<br><dl class="decls">  <dt id="Collie.Options.Domain.Some"><code><a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Some"><span class="name constructor">Some</span></a>&ensp;:&ensp;<span class="name type">Type</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a></code></dt>  <dt id="Collie.Options.Domain.ALot"><code><a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ALot"><span class="name constructor">ALot</span></a>&ensp;:&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a></code></dt></dl></dd><dt id="Collie.Options.Domain.elimDomain"><code><a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.elimDomain"><span class="name function">elimDomain</span></a>&ensp;:&ensp;{<span class="boundvar">p</span>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;((<span class="boundvar">d</span>&ensp;:&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">p</span>&ensp;(<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Some"><span class="name constructor">Some</span></a>&ensp;<span class="boundvar">d</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;((<span class="boundvar">ds</span>&ensp;:&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">p</span>&ensp;(<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ALot"><span class="name constructor">ALot</span></a>&ensp;<span class="boundvar">ds</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">d</span>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">d</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Domain.Carrier"><code><a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Carrier"><span class="name function">Carrier</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Domain.Parser"><code><a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Parser"><span class="name function">Parser</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Domain.Arguments"><code><span class="keyword">record</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;:&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Collie.Options.Domain.MkArguments"><code><a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.MkArguments"><span class="name constructor">MkArguments</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span>&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">domain</span>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Parser"><span class="name function">Parser</span></a>&ensp;<span class="boundvar">domain</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></code></dt></dl><br>  <b>Projections</b>:<br><dl class="decls">  <dt id="Collie.Options.Domain.Arguments.(.domain)"><code><span class="type resolved" title="Collie.Options.Domain.Arguments.(.domain)"><span class="name function">.domain</span></span>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a></code></dt>  <dt id="Collie.Options.Domain.Arguments.(.rawParser)"><code><span class="type resolved" title="Collie.Options.Domain.Arguments.(.rawParser)"><span class="name function">.rawParser</span></span>&ensp;:&ensp;(<span class="boundvar">{rec:0}</span>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Parser"><span class="name function">Parser</span></a>&ensp;(<span class="type resolved" title="Collie.Options.Domain.Arguments.domain"><span class="name function">domain</span></span>&ensp;<span class="boundvar">{rec:0}</span>)</code></dt>  <dt id="Collie.Options.Domain.Arguments.(.required)"><code><span class="type resolved" title="Collie.Options.Domain.Arguments.(.required)"><span class="name function">.required</span></span>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span></code></dt></dl></dd><dt id="Collie.Options.Domain.Arguments.(.required)"><code><span class="type resolved" title="Collie.Options.Domain.Arguments.(.required)"><span class="name function">.required</span></span>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Domain.Arguments.required"><code><span class="type resolved" title="Collie.Options.Domain.Arguments.required"><span class="name function">required</span></span>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Domain.Arguments.(.domain)"><code><span class="type resolved" title="Collie.Options.Domain.Arguments.(.domain)"><span class="name function">.domain</span></span>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Domain.Arguments.domain"><code><span class="type resolved" title="Collie.Options.Domain.Arguments.domain"><span class="name function">domain</span></span>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Domain"><span class="name type">Domain</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Domain.Arguments.(.rawParser)"><code><span class="type resolved" title="Collie.Options.Domain.Arguments.(.rawParser)"><span class="name function">.rawParser</span></span>&ensp;:&ensp;(<span class="boundvar">{rec:0}</span>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Parser"><span class="name function">Parser</span></a>&ensp;(<span class="type resolved" title="Collie.Options.Domain.Arguments.domain"><span class="name function">domain</span></span>&ensp;<span class="boundvar">{rec:0}</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Domain.Arguments.rawParser"><code><span class="type resolved" title="Collie.Options.Domain.Arguments.rawParser"><span class="name function">rawParser</span></span>&ensp;:&ensp;(<span class="boundvar">{rec:0}</span>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Parser"><span class="name function">Parser</span></a>&ensp;(<span class="type resolved" title="Collie.Options.Domain.Arguments.domain"><span class="name function">domain</span></span>&ensp;<span class="boundvar">{rec:0}</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Domain.(.parser)"><code><a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.(.parser)"><span class="name function">.parser</span></a>&ensp;:&ensp;(<span class="boundvar">arg</span>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Carrier"><span class="name function">Carrier</span></a>&ensp;(<span class="boundvar">arg</span>&ensp;<span class="type resolved" title="Collie.Options.Domain.Arguments.(.domain)"><span class="name function">.domain</span></span>))</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Domain.ParsedArgumentsT"><code><a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArgumentsT"><span class="name function">ParsedArgumentsT</span></a>&ensp;:&ensp;(<span class="name type">Type</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Domain.ParsedArguments"><code><a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.ParsedArguments"><span class="name function">ParsedArguments</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd></dl></div><footer>Produced by Idris 2 version 0.7.0</footer></body></html>
\ No newline at end of file
diff --git a/docs/Collie.Options.Usual.html b/docs/Collie.Options.Usual.html
index ccfe8dd..32b3eaf 100644
--- a/docs/Collie.Options.Usual.html
+++ b/docs/Collie.Options.Usual.html
@@ -1 +1,64 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>Collie.Options.Usual</title><link rel="stylesheet" href="../styles.css"></head><body class="namespace"><header><strong>Idris2Doc</strong> : Collie.Options.Usual<nav><a href="../index.html">Index</a></nav></header><div class="container"><div id="moduleHeader"><h1>Collie.Options.Usual</h1><p></p></div><dl class="decls"><dt id="Collie.Options.Usual.FilePath"><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.FilePath"><span class="name function">FilePath</span></a>&ensp;:&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Options.Usual.Regex"><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.Regex"><span class="name function">Regex</span></a>&ensp;:&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Options.Usual.Regexp"><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.Regexp"><span class="name function">Regexp</span></a>&ensp;:&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Options.Usual.Url"><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.Url"><span class="name function">Url</span></a>&ensp;:&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Options.Usual.filePath"><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.filePath"><span class="name function">filePath</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Options.Usual.integer"><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.integer"><span class="name function">integer</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Options.Usual.lotsOf"><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.lotsOf"><span class="name function">lotsOf</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;-&gt;&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Options.Usual.nat"><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.nat"><span class="name function">nat</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Options.Usual.none"><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.none"><span class="name function">none</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Options.Usual.regex"><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.regex"><span class="name function">regex</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Options.Usual.regexp"><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.regexp"><span class="name function">regexp</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Options.Usual.url"><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.url"><span class="name function">url</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></dt><dd>  <b>Totality</b>:&ensp;total</dd></dl></div><footer>Produced by Idris 2 version 0.4.0-c86184575</footer></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="en">
+
+<head>
+  <meta charset="utf-8">
+  <title>Collie.Options.Usual</title>
+  <link rel="stylesheet" type="text/css" id="preferredStyle" href="../default.css">
+  <script>
+    /* Updates the stylesheet to use the preferred one.
+       Note that we set the link to root ++ sourceLoc because the config
+       is shared across the whole website, so the root may differ from
+       page to page.
+    */
+    function setStyleSource (sourceLoc) {
+      document.getElementById("preferredStyle").href = "../" + sourceLoc + ".css";
+      document.getElementById("selectPreferredStyle").value = sourceLoc;
+    }
+    /* Initialises the preferred style sheet:
+       1. if there is a stored value then use that
+          otherwise select the default
+       2. set both the css link href & the drop down menu selected option
+    */
+    function initStyleSource () {
+      var preferredStyle = localStorage.getItem("stylefile");
+      if (preferredStyle !== null) {
+        setStyleSource(preferredStyle);
+      } else {
+        setStyleSource("default");
+      };
+    }
+    function saveStyleSource (preferredStyle) {
+      localStorage.stylefile = preferredStyle;
+    }
+    </script>
+</head>
+
+<body class="namespace">
+<header>
+  <strong>Idris2Doc</strong> : Collie.Options.Usual
+  <nav><a href="../index.html">Index</a>
+
+  <select id="selectPreferredStyle">
+    <option value="default">Default</option>
+<option value="alternative">Alternative</option>
+<option value="blackandwhite">Black & White</option>
+
+  </select>
+  </nav>
+
+  <script>
+  /* We start by initialising the style source */
+  initStyleSource();
+
+  /* This listens for changes on the drop down menu and updates the
+     css used for the current page when a selection is made.
+  */
+  document.getElementById("selectPreferredStyle").addEventListener("change", function(){
+    var selected = this.options[this.selectedIndex].value; /* the option chosen */
+    setStyleSource (selected);
+    saveStyleSource (selected);
+  });
+</script>
+
+</header>
+<div class="container"><div id="module-header"><h1>Collie.Options.Usual</h1><pre></pre></div><code></code><h2>Definitions</h2><dl class="decls"><dt id="Collie.Options.Usual.none"><code><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.none"><span class="name function">none</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Usual.lotsOf"><code><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.lotsOf"><span class="name function">lotsOf</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Usual.Regex"><code><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.Regex"><span class="name function">Regex</span></a>&ensp;:&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Usual.regex"><code><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.regex"><span class="name function">regex</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Usual.FilePath"><code><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.FilePath"><span class="name function">FilePath</span></a>&ensp;:&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Usual.filePath"><code><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.filePath"><span class="name function">filePath</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Usual.Regexp"><code><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.Regexp"><span class="name function">Regexp</span></a>&ensp;:&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Usual.regexp"><code><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.regexp"><span class="name function">regexp</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Usual.Url"><code><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.Url"><span class="name function">Url</span></a>&ensp;:&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Usual.url"><code><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.url"><span class="name function">url</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Usual.nat"><code><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.nat"><span class="name function">nat</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Options.Usual.integer"><code><a class="type" href="Collie.Options.Usual.html#Collie.Options.Usual.integer"><span class="name function">integer</span></a>&ensp;:&ensp;<a class="type" href="Collie.Options.Domain.html#Collie.Options.Domain.Arguments"><span class="name type">Arguments</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd></dl></div><footer>Produced by Idris 2 version 0.7.0</footer></body></html>
\ No newline at end of file
diff --git a/docs/Collie.Parser.html b/docs/Collie.Parser.html
index 4e9ef48..3cd863c 100644
--- a/docs/Collie.Parser.html
+++ b/docs/Collie.Parser.html
@@ -1 +1,64 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>Collie.Parser</title><link rel="stylesheet" href="../styles.css"></head><body class="namespace"><header><strong>Idris2Doc</strong> : Collie.Parser<nav><a href="../index.html">Index</a></nav></header><div class="container"><div id="moduleHeader"><h1>Collie.Parser</h1><p></p></div><dl class="decls"><dt id="Collie.Parser.parse"><a class="type" href="Collie.Parser.html#Collie.Parser.parse"><span class="name function">parse</span></a>&ensp;:&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Basics.List"><span class="name type">List</span></span>&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Core.html#Collie.Core.ParseTreeT"><span class="name function">ParseTreeT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<!-- ann ignored START -->cmd<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Parser.parseCommand"><a class="type" href="Collie.Parser.html#Collie.Parser.parseCommand"><span class="name function">parseCommand</span></a>&ensp;:&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Basics.List"><span class="name type">List</span></span>&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Parser.parseModifier"><a class="type" href="Collie.Parser.html#Collie.Parser.parseModifier"><span class="name function">parseModifier</span></a>&ensp;:&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END -->)&ensp;-&gt;&ensp;(<!-- ann ignored START -->pos<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.IsField"><span class="name function">IsField</span></a>&ensp;<!-- ann ignored START -->modName<!-- ann END -->&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">.modifiers</span></span>))&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Basics.List"><span class="name type">List</span></span>&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END -->&ensp;-&gt;&ensp;(<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifierT"><span class="name function">ParsedModifierT</span></a>&ensp;<span class="type resolved" title="Prelude.Basics.id"><span class="name function">id</span></span>&ensp;<span class="type resolved" title="Prelude.Basics.id"><span class="name function">id</span></span>&ensp;(<span class="type resolved" title="Builtin.DPair.DPair.snd"><span class="name function">snd</span></span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.field"><span class="name function">field</span></a>&ensp;<!-- ann ignored START -->pos<!-- ann END -->))&ensp;-&gt;&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">.modifiers</span></span>)))&ensp;-&gt;&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total</dd></dl></div><footer>Produced by Idris 2 version 0.4.0-c86184575</footer></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="en">
+
+<head>
+  <meta charset="utf-8">
+  <title>Collie.Parser</title>
+  <link rel="stylesheet" type="text/css" id="preferredStyle" href="../default.css">
+  <script>
+    /* Updates the stylesheet to use the preferred one.
+       Note that we set the link to root ++ sourceLoc because the config
+       is shared across the whole website, so the root may differ from
+       page to page.
+    */
+    function setStyleSource (sourceLoc) {
+      document.getElementById("preferredStyle").href = "../" + sourceLoc + ".css";
+      document.getElementById("selectPreferredStyle").value = sourceLoc;
+    }
+    /* Initialises the preferred style sheet:
+       1. if there is a stored value then use that
+          otherwise select the default
+       2. set both the css link href & the drop down menu selected option
+    */
+    function initStyleSource () {
+      var preferredStyle = localStorage.getItem("stylefile");
+      if (preferredStyle !== null) {
+        setStyleSource(preferredStyle);
+      } else {
+        setStyleSource("default");
+      };
+    }
+    function saveStyleSource (preferredStyle) {
+      localStorage.stylefile = preferredStyle;
+    }
+    </script>
+</head>
+
+<body class="namespace">
+<header>
+  <strong>Idris2Doc</strong> : Collie.Parser
+  <nav><a href="../index.html">Index</a>
+
+  <select id="selectPreferredStyle">
+    <option value="default">Default</option>
+<option value="alternative">Alternative</option>
+<option value="blackandwhite">Black & White</option>
+
+  </select>
+  </nav>
+
+  <script>
+  /* We start by initialising the style source */
+  initStyleSource();
+
+  /* This listens for changes on the drop down menu and updates the
+     css used for the current page when a selection is made.
+  */
+  document.getElementById("selectPreferredStyle").addEventListener("change", function(){
+    var selected = this.options[this.selectedIndex].value; /* the option chosen */
+    setStyleSource (selected);
+    saveStyleSource (selected);
+  });
+</script>
+
+</header>
+<div class="container"><div id="module-header"><h1>Collie.Parser</h1><pre></pre></div><code></code><h2>Definitions</h2><dl class="decls"><dt id="Collie.Parser.parseCommand"><code><a class="type" href="Collie.Parser.html#Collie.Parser.parseCommand"><span class="name function">parseCommand</span></a>&ensp;:&ensp;(<span class="boundvar">cmd</span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">nm</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Basics.List"><span class="name type">List</span></span>&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Parser.parseModifier"><code><a class="type" href="Collie.Parser.html#Collie.Parser.parseModifier"><span class="name function">parseModifier</span></a>&ensp;:&ensp;(<span class="boundvar">cmd</span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">nm</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">pos</span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.IsField"><span class="name function">IsField</span></a>&ensp;<span class="boundvar">modName</span>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">.modifiers</span></span>))&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Basics.List"><span class="name type">List</span></span>&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;(<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifierT"><span class="name function">ParsedModifierT</span></a>&ensp;<span class="type resolved" title="Prelude.Basics.id"><span class="name function">id</span></span>&ensp;<span class="type resolved" title="Prelude.Basics.id"><span class="name function">id</span></span>&ensp;(<span class="type resolved" title="Builtin.DPair.DPair.snd"><span class="name function">snd</span></span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.field"><span class="name function">field</span></a>&ensp;<span class="boundvar">pos</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.ParsedModifiersT"><span class="name function">ParsedModifiersT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Collie.Core.Command.(.modifiers)"><span class="name function">.modifiers</span></span>)))&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommandT"><span class="name type">ParsedCommandT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">cmd</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Parser.parse"><code><a class="type" href="Collie.Parser.html#Collie.Parser.parse"><span class="name function">parse</span></a>&ensp;:&ensp;(<span class="boundvar">cmd</span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">nm</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Basics.List"><span class="name type">List</span></span>&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Error.html#Collie.Error.Error"><span class="name type">Error</span></a>&ensp;(<a class="type" href="Collie.Core.html#Collie.Core.ParseTreeT"><span class="name function">ParseTreeT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">cmd</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd></dl></div><footer>Produced by Idris 2 version 0.7.0</footer></body></html>
\ No newline at end of file
diff --git a/docs/Collie.Usage.html b/docs/Collie.Usage.html
index d6264a4..bd4370f 100644
--- a/docs/Collie.Usage.html
+++ b/docs/Collie.Usage.html
@@ -1 +1,64 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>Collie.Usage</title><link rel="stylesheet" href="../styles.css"></head><body class="namespace"><header><strong>Idris2Doc</strong> : Collie.Usage<nav><a href="../index.html">Index</a></nav></header><div class="container"><div id="moduleHeader"><h1>Collie.Usage</h1><p></p></div><dl class="decls"><dt id="Collie.Usage.Printer"><a class="type" href="Collie.Usage.html#Collie.Usage.Printer"><span class="name function">Printer</span></a>&ensp;:&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Usage.namedBlock"><a class="type" href="Collie.Usage.html#Collie.Usage.namedBlock"><span class="name function">namedBlock</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>&ensp;-&gt;&ensp;<a class="type" href="Collie.Usage.html#Collie.Usage.Printer"><span class="name function">Printer</span></a></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Usage.usageCommand"><a class="type" href="Collie.Usage.html#Collie.Usage.usageCommand"><span class="name function">usageCommand</span></a>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<!-- ann ignored START -->cmdName<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>&ensp;-&gt;&ensp;<a class="type" href="Collie.Usage.html#Collie.Usage.Printer"><span class="name function">Printer</span></a></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.Usage.usageModifiers"><a class="type" href="Collie.Usage.html#Collie.Usage.usageModifiers"><span class="name function">usageModifiers</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>&ensp;-&gt;&ensp;<a class="type" href="Collie.Usage.html#Collie.Usage.Printer"><span class="name function">Printer</span></a></dt><dd>  <b>Totality</b>:&ensp;total</dd></dl></div><footer>Produced by Idris 2 version 0.4.0-c86184575</footer></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="en">
+
+<head>
+  <meta charset="utf-8">
+  <title>Collie.Usage</title>
+  <link rel="stylesheet" type="text/css" id="preferredStyle" href="../default.css">
+  <script>
+    /* Updates the stylesheet to use the preferred one.
+       Note that we set the link to root ++ sourceLoc because the config
+       is shared across the whole website, so the root may differ from
+       page to page.
+    */
+    function setStyleSource (sourceLoc) {
+      document.getElementById("preferredStyle").href = "../" + sourceLoc + ".css";
+      document.getElementById("selectPreferredStyle").value = sourceLoc;
+    }
+    /* Initialises the preferred style sheet:
+       1. if there is a stored value then use that
+          otherwise select the default
+       2. set both the css link href & the drop down menu selected option
+    */
+    function initStyleSource () {
+      var preferredStyle = localStorage.getItem("stylefile");
+      if (preferredStyle !== null) {
+        setStyleSource(preferredStyle);
+      } else {
+        setStyleSource("default");
+      };
+    }
+    function saveStyleSource (preferredStyle) {
+      localStorage.stylefile = preferredStyle;
+    }
+    </script>
+</head>
+
+<body class="namespace">
+<header>
+  <strong>Idris2Doc</strong> : Collie.Usage
+  <nav><a href="../index.html">Index</a>
+
+  <select id="selectPreferredStyle">
+    <option value="default">Default</option>
+<option value="alternative">Alternative</option>
+<option value="blackandwhite">Black & White</option>
+
+  </select>
+  </nav>
+
+  <script>
+  /* We start by initialising the style source */
+  initStyleSource();
+
+  /* This listens for changes on the drop down menu and updates the
+     css used for the current page when a selection is made.
+  */
+  document.getElementById("selectPreferredStyle").addEventListener("change", function(){
+    var selected = this.options[this.selectedIndex].value; /* the option chosen */
+    setStyleSource (selected);
+    saveStyleSource (selected);
+  });
+</script>
+
+</header>
+<div class="container"><div id="module-header"><h1>Collie.Usage</h1><pre></pre></div><code></code><h2>Definitions</h2><dl class="decls"><dt id="Collie.Usage.Printer"><code><a class="type" href="Collie.Usage.html#Collie.Usage.Printer"><span class="name function">Printer</span></a>&ensp;:&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Usage.namedBlock"><code><a class="type" href="Collie.Usage.html#Collie.Usage.namedBlock"><span class="name function">namedBlock</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Usage.html#Collie.Usage.Printer"><span class="name function">Printer</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">export</span></dd><dt id="Collie.Usage.usageModifiers"><code><a class="type" href="Collie.Usage.html#Collie.Usage.usageModifiers"><span class="name function">usageModifiers</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<a class="type" href="Collie.Modifiers.html#Collie.Modifiers.Modifier"><span class="name type">Modifier</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Usage.html#Collie.Usage.Printer"><span class="name function">Printer</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">export</span></dd><dt id="Collie.Usage.usageCommand"><code><a class="type" href="Collie.Usage.html#Collie.Usage.usageCommand"><span class="name function">usageCommand</span></a>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">cmdName</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Usage.html#Collie.Usage.Printer"><span class="name function">Printer</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">export</span></dd><dt id="Collie.Usage.(.usage)"><code><a class="type" href="Collie.Usage.html#Collie.Usage.(.usage)"><span class="name function">.usage</span></a>&ensp;:&ensp;{<span class="keyword">default</span>&ensp;<span class="name constructor">80</span>&ensp;<span class="boundvar">_</span>&ensp;:&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>}&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">cmdName</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">String</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">export</span></dd></dl></div><footer>Produced by Idris 2 version 0.7.0</footer></body></html>
\ No newline at end of file
diff --git a/docs/Collie.html b/docs/Collie.html
index 0085424..502261e 100644
--- a/docs/Collie.html
+++ b/docs/Collie.html
@@ -1,5 +1,69 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>Collie</title><link rel="stylesheet" href="../styles.css"></head><body class="namespace"><header><strong>Idris2Doc</strong> : Collie<nav><a href="../index.html">Index</a></nav></header><div class="container"><div id="moduleHeader"><h1>Collie</h1><p>Collie: Command line interface for Idris2 applications
+<!DOCTYPE html><html lang="en">
 
-Based on Guillaume Allais's agdARGS library:
+<head>
+  <meta charset="utf-8">
+  <title>Collie</title>
+  <link rel="stylesheet" type="text/css" id="preferredStyle" href="../default.css">
+  <script>
+    /* Updates the stylesheet to use the preferred one.
+       Note that we set the link to root ++ sourceLoc because the config
+       is shared across the whole website, so the root may differ from
+       page to page.
+    */
+    function setStyleSource (sourceLoc) {
+      document.getElementById("preferredStyle").href = "../" + sourceLoc + ".css";
+      document.getElementById("selectPreferredStyle").value = sourceLoc;
+    }
+    /* Initialises the preferred style sheet:
+       1. if there is a stored value then use that
+          otherwise select the default
+       2. set both the css link href & the drop down menu selected option
+    */
+    function initStyleSource () {
+      var preferredStyle = localStorage.getItem("stylefile");
+      if (preferredStyle !== null) {
+        setStyleSource(preferredStyle);
+      } else {
+        setStyleSource("default");
+      };
+    }
+    function saveStyleSource (preferredStyle) {
+      localStorage.stylefile = preferredStyle;
+    }
+    </script>
+</head>
 
-https://github.com/gallais/agdargs/</p></div><dl class="decls"><dt id="Collie.::"><a class="type" href="Collie.html#Collie.::"><span class="name function">(::)</span></a>&ensp;:&ensp;(<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.fst)"><span class="name function">.fst</span></span>)&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.snd)"><span class="name function">.snd</span></span>)&ensp;-&gt;&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable"><span class="name type">Checkable</span></span>&ensp;(<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;((<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.snd)"><span class="name function">.snd</span></span>)&ensp;<span class="type resolved" title="Collie.Core.Command.(.subcommands)"><span class="name function">.subcommands</span></span>)&ensp;-&gt;&ensp;<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END --></dt><dd>  Givent&ensp;that&ensp;we&ensp;already&ensp;have&ensp;list&ensp;syntax&ensp;to&ensp;build&ensp;records,&ensp;this&ensp;gives&ensp;us&ensp;the<br>  ability&ensp;to&ensp;use&ensp;list&ensp;syntax&ensp;to&ensp;build&ensp;`Handlers`:&ensp;the&ensp;head&ensp;will&ensp;be&ensp;the&ensp;handler<br>  for&ensp;the&ensp;toplevel&ensp;command&ensp;and&ensp;the&ensp;tail&ensp;will&ensp;go&ensp;towards&ensp;building&ensp;the&ensp;record&ensp;of<br>  handlers&ensp;for&ensp;the&ensp;subcommands.<br>  <b>Totality</b>:&ensp;total<br>  <b>Fixity Declaration</b>:&ensp;infixr&ensp;operator,&ensp;level&ensp;7</dd><dt id="Collie.Handlers"><!-- ann ignored START -->record<!-- ann END -->&ensp;<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;:&ensp;<span class="name type">Type</span>&ensp;-&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Collie.MkHandlers"><a class="type" href="Collie.html#Collie.MkHandlers"><span class="name constructor">MkHandlers</span></a>&ensp;:&ensp;(<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.fst)"><span class="name function">.fst</span></span>)&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.snd)"><span class="name function">.snd</span></span>)&ensp;-&gt;&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable"><span class="name type">Checkable</span></span>&ensp;(<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;((<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.snd)"><span class="name function">.snd</span></span>)&ensp;<span class="type resolved" title="Collie.Core.Command.(.subcommands)"><span class="name function">.subcommands</span></span>)&ensp;-&gt;&ensp;<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END --></dt></dl><br>  <b>Projections</b>:<br><dl class="decls">  <dt id="Collie.Handlers.(.here)"><span class="type resolved" title="Collie.Handlers.(.here)"><span class="name function">here</span></span>&ensp;:&ensp;<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.fst)"><span class="name function">.fst</span></span>)&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.snd)"><span class="name function">.snd</span></span>)&ensp;-&gt;&ensp;<!-- ann ignored START -->a<!-- ann END --></dt>  <dt id="Collie.Handlers.(.there)"><span class="type resolved" title="Collie.Handlers.(.there)"><span class="name function">there</span></span>&ensp;:&ensp;<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable"><span class="name type">Checkable</span></span>&ensp;(<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;((<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.snd)"><span class="name function">.snd</span></span>)&ensp;<span class="type resolved" title="Collie.Core.Command.(.subcommands)"><span class="name function">.subcommands</span></span>)</dt></dl></dd><dt id="Collie.handle"><a class="type" href="Collie.html#Collie.handle"><span class="name function">handle</span></a>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParseTree"><span class="name function">ParseTree</span></a>&ensp;(<!-- ann ignored START -->cmd<!-- ann END -->&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.snd)"><span class="name function">.snd</span></span>)&ensp;-&gt;&ensp;<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->cmd<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->a<!-- ann END --></dt><dd>  Handling&ensp;a&ensp;parsetree&ensp;is&ensp;pretty&ensp;simple:&ensp;use&ensp;`there`&ensp;together&ensp;with&ensp;`(!!)`&ensp;to<br>  select&ensp;the&ensp;appropriate&ensp;subhandler&ensp;while&ensp;you&apos;re&ensp;encountering&ensp;the&ensp;`There`<br>  constructor&ensp;and&ensp;finish&ensp;up&ensp;with&ensp;`here`.<br>  <b>Totality</b>:&ensp;total</dd><dt id="Collie.~~&gt;"><a class="type" href="Collie.html#Collie.~~&gt;"><span class="name function">(~~&gt;)</span></a>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<!-- ann ignored START -->arg<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span>&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  A&ensp;nicer&ensp;notation&ensp;for&ensp;handlers<br>  <b>Totality</b>:&ensp;total<br>  <b>Fixity Declaration</b>:&ensp;infixr&ensp;operator,&ensp;level&ensp;4</dd></dl></div><footer>Produced by Idris 2 version 0.4.0-c86184575</footer></body></html>
\ No newline at end of file
+<body class="namespace">
+<header>
+  <strong>Idris2Doc</strong> : Collie
+  <nav><a href="../index.html">Index</a>
+
+  <select id="selectPreferredStyle">
+    <option value="default">Default</option>
+<option value="alternative">Alternative</option>
+<option value="blackandwhite">Black & White</option>
+
+  </select>
+  </nav>
+
+  <script>
+  /* We start by initialising the style source */
+  initStyleSource();
+
+  /* This listens for changes on the drop down menu and updates the
+     css used for the current page when a selection is made.
+  */
+  document.getElementById("selectPreferredStyle").addEventListener("change", function(){
+    var selected = this.options[this.selectedIndex].value; /* the option chosen */
+    setStyleSource (selected);
+    saveStyleSource (selected);
+  });
+</script>
+
+</header>
+<div class="container"><div id="module-header"><h1>Collie</h1><pre>Collie: Command line interface for Idris2 applications
+
+Based on Guillaume Allais&apos;s agdARGS library:
+
+https://github.com/gallais/agdargs/
+</pre></div><h2>Reexports</h2><code><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Collie.Core<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Collie.Parser<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Collie.Usage<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Collie.Options.Domain<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Collie.Options.Usual<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Collie.Modifiers<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Data.Record<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Data.Record.SmartConstructors<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Data.DPair<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Data.Magma<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Data.SnocList<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;System</code><h2>Definitions</h2><dl class="decls"><dt id="Collie.(.parseArgs)"><code><a class="type" href="Collie.html#Collie.(.parseArgs)"><span class="name function">.parseArgs</span></a>&ensp;:&ensp;(<span class="boundvar">cmd</span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">nm</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.IO.HasIO"><span class="name type">HasIO</span></span>&ensp;<span class="boundvar">io</span>&ensp;<span class="keyword">=&gt;</span>&ensp;<span class="boundvar">io</span>&ensp;(<span class="type resolved" title="Prelude.Types.Either"><span class="name type">Either</span></span>&ensp;<span class="name type">String</span>&ensp;(<a class="type" href="Collie.Core.html#Collie.Core.ParseTreeT"><span class="name function">ParseTreeT</span></a>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">cmd</span>))</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Handlers"><code><span class="keyword">record</span>&ensp;<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;:&ensp;<span class="name type">Type</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Collie.MkHandlers"><code><a class="type" href="Collie.html#Collie.MkHandlers"><span class="name constructor">MkHandlers</span></a>&ensp;:&ensp;(<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.fst)"><span class="name function">.fst</span></span>)&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.snd)"><span class="name function">.snd</span></span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable"><span class="name type">Checkable</span></span>&ensp;(<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<span class="boundvar">a</span>)&ensp;((<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.snd)"><span class="name function">.snd</span></span>)&ensp;<span class="type resolved" title="Collie.Core.Command.(.subcommands)"><span class="name function">.subcommands</span></span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">cmd</span></code></dt></dl><br>  <b>Projections</b>:<br><dl class="decls">  <dt id="Collie.Handlers.(.here)"><code><span class="type resolved" title="Collie.Handlers.(.here)"><span class="name function">.here</span></span>&ensp;:&ensp;<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.fst)"><span class="name function">.fst</span></span>)&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.snd)"><span class="name function">.snd</span></span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span></code></dt>  <dt id="Collie.Handlers.(.there)"><code><span class="type resolved" title="Collie.Handlers.(.there)"><span class="name function">.there</span></span>&ensp;:&ensp;<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable"><span class="name type">Checkable</span></span>&ensp;(<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<span class="boundvar">a</span>)&ensp;((<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.snd)"><span class="name function">.snd</span></span>)&ensp;<span class="type resolved" title="Collie.Core.Command.(.subcommands)"><span class="name function">.subcommands</span></span>)</code></dt></dl></dd><dt id="Collie.Handlers.(.here)"><code><span class="type resolved" title="Collie.Handlers.(.here)"><span class="name function">.here</span></span>&ensp;:&ensp;<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.fst)"><span class="name function">.fst</span></span>)&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.snd)"><span class="name function">.snd</span></span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Handlers.here"><code><span class="type resolved" title="Collie.Handlers.here"><span class="name function">here</span></span>&ensp;:&ensp;<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.fst)"><span class="name function">.fst</span></span>)&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.snd)"><span class="name function">.snd</span></span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Handlers.(.there)"><code><span class="type resolved" title="Collie.Handlers.(.there)"><span class="name function">.there</span></span>&ensp;:&ensp;<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable"><span class="name type">Checkable</span></span>&ensp;(<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<span class="boundvar">a</span>)&ensp;((<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.snd)"><span class="name function">.snd</span></span>)&ensp;<span class="type resolved" title="Collie.Core.Command.(.subcommands)"><span class="name function">.subcommands</span></span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.Handlers.there"><code><span class="type resolved" title="Collie.Handlers.there"><span class="name function">there</span></span>&ensp;:&ensp;<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable"><span class="name type">Checkable</span></span>&ensp;(<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<span class="boundvar">a</span>)&ensp;((<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.snd)"><span class="name function">.snd</span></span>)&ensp;<span class="type resolved" title="Collie.Core.Command.(.subcommands)"><span class="name function">.subcommands</span></span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.(::)"><code><a class="type" href="Collie.html#Collie.(::)"><span class="name function">(::)</span></a>&ensp;:&ensp;(<a class="type" href="Collie.Core.html#Collie.Core.ParsedCommand"><span class="name type">ParsedCommand</span></a>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.fst)"><span class="name function">.fst</span></span>)&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.snd)"><span class="name function">.snd</span></span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable"><span class="name type">Checkable</span></span>&ensp;(<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<span class="boundvar">a</span>)&ensp;((<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.snd)"><span class="name function">.snd</span></span>)&ensp;<span class="type resolved" title="Collie.Core.Command.(.subcommands)"><span class="name function">.subcommands</span></span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">cmd</span></code></dt><dd><pre>  Givent that we already have list syntax to build records, this gives us the<br>  ability to use list syntax to build `Handlers`: the head will be the handler<br>  for the toplevel command and the tail will go towards building the record of<br>  handlers for the subcommands.</pre><br>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Fixity Declaration</b>:&ensp;infixr&ensp;operator,&ensp;level&ensp;7</dd><dt id="Collie.(~~&gt;)"><code><span class="keyword">0</span>&ensp;<a class="type" href="Collie.html#Collie.(~~&gt;)"><span class="name function">(~~&gt;)</span></a>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">arg</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd><pre>  A nicer notation for handlers</pre><br>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Fixity Declaration</b>:&ensp;infixr&ensp;operator,&ensp;level&ensp;4</dd><dt id="Collie.handle"><code><a class="type" href="Collie.html#Collie.handle"><span class="name function">handle</span></a>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.ParseTree"><span class="name function">ParseTree</span></a>&ensp;(<span class="boundvar">cmd</span>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.snd)"><span class="name function">.snd</span></span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Collie.html#Collie.Handlers"><span class="name type">Handlers</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">cmd</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span></code></dt><dd><pre>  Handling a parsetree is pretty simple: use `there` together with `(!!)` to<br>  select the appropriate subhandler while you&apos;re encountering  the `There`<br>  constructor and finish up with `here`.</pre><br>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Collie.(.handleWith)"><code><a class="type" href="Collie.html#Collie.(.handleWith)"><span class="name function">.handleWith</span></a>&ensp;:&ensp;(<span class="boundvar">cmd</span>&ensp;:&ensp;<a class="type" href="Collie.Core.html#Collie.Core.Command"><span class="name type">Command</span></a>&ensp;<span class="boundvar">nm</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">cmd</span>&ensp;<a class="type" href="Collie.html#Collie.(~~&gt;)"><span class="name function">~~&gt;</span></a>&ensp;<span class="type resolved" title="PrimIO.IO"><span class="name type">IO</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="PrimIO.IO"><span class="name type">IO</span></span>&ensp;<span class="boundvar">a</span></code></dt><dd><pre>  Finally we can put the various pieces together to get a toplevel command<br>  parsing the arguments and handling the resulting command using the<br>  user-provided handlers</pre><br>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd></dl></div><footer>Produced by Idris 2 version 0.7.0</footer></body></html>
\ No newline at end of file
diff --git a/docs/Data.List.Fresh.Elem.html b/docs/Data.List.Fresh.Elem.html
index 607d7ff..6346398 100644
--- a/docs/Data.List.Fresh.Elem.html
+++ b/docs/Data.List.Fresh.Elem.html
@@ -1 +1,64 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>Data.List.Fresh.Elem</title><link rel="stylesheet" href="../styles.css"></head><body class="namespace"><header><strong>Idris2Doc</strong> : Data.List.Fresh.Elem<nav><a href="../index.html">Index</a></nav></header><div class="container"><div id="moduleHeader"><h1>Data.List.Fresh.Elem</h1><p></p></div><dl class="decls"><dt id="Data.List.Fresh.Elem.Elem"><!-- ann ignored START -->data<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.Elem"><span class="name type">Elem</span></a>&ensp;:&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Constructors</b>:<br><dl class="decls">  <dt id="Data.List.Fresh.Elem.Here"><a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.Here"><span class="name constructor">Here</span></a>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.Elem"><span class="name type">Elem</span></a>&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.::"><span class="name constructor">::</span></a>&ensp;<!-- ann ignored START -->xs<!-- ann END --></dt>  <dt id="Data.List.Fresh.Elem.There"><a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.There"><span class="name constructor">There</span></a>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.Elem"><span class="name type">Elem</span></a>&ensp;<!-- ann ignored START -->y<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.Elem"><span class="name type">Elem</span></a>&ensp;<!-- ann ignored START -->y<!-- ann END -->&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.::"><span class="name constructor">::</span></a>&ensp;<!-- ann ignored START -->xs<!-- ann END --></dt></dl></dd><dt id="Data.List.Fresh.Elem.recallId"><a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.recallId"><span class="name function">recallId</span></a>&ensp;:&ensp;(<!-- ann ignored START -->xs<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->)&ensp;-&gt;&ensp;(<!-- ann ignored START -->pos<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.Elem"><span class="name type">Elem</span></a>&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->xs<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.(.recall)"><span class="name function">.recall</span></a>&ensp;<!-- ann ignored START -->pos<!-- ann END -->&ensp;=&ensp;<!-- ann ignored START -->x<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd></dl></div><footer>Produced by Idris 2 version 0.4.0-c86184575</footer></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="en">
+
+<head>
+  <meta charset="utf-8">
+  <title>Data.List.Fresh.Elem</title>
+  <link rel="stylesheet" type="text/css" id="preferredStyle" href="../default.css">
+  <script>
+    /* Updates the stylesheet to use the preferred one.
+       Note that we set the link to root ++ sourceLoc because the config
+       is shared across the whole website, so the root may differ from
+       page to page.
+    */
+    function setStyleSource (sourceLoc) {
+      document.getElementById("preferredStyle").href = "../" + sourceLoc + ".css";
+      document.getElementById("selectPreferredStyle").value = sourceLoc;
+    }
+    /* Initialises the preferred style sheet:
+       1. if there is a stored value then use that
+          otherwise select the default
+       2. set both the css link href & the drop down menu selected option
+    */
+    function initStyleSource () {
+      var preferredStyle = localStorage.getItem("stylefile");
+      if (preferredStyle !== null) {
+        setStyleSource(preferredStyle);
+      } else {
+        setStyleSource("default");
+      };
+    }
+    function saveStyleSource (preferredStyle) {
+      localStorage.stylefile = preferredStyle;
+    }
+    </script>
+</head>
+
+<body class="namespace">
+<header>
+  <strong>Idris2Doc</strong> : Data.List.Fresh.Elem
+  <nav><a href="../index.html">Index</a>
+
+  <select id="selectPreferredStyle">
+    <option value="default">Default</option>
+<option value="alternative">Alternative</option>
+<option value="blackandwhite">Black & White</option>
+
+  </select>
+  </nav>
+
+  <script>
+  /* We start by initialising the style source */
+  initStyleSource();
+
+  /* This listens for changes on the drop down menu and updates the
+     css used for the current page when a selection is made.
+  */
+  document.getElementById("selectPreferredStyle").addEventListener("change", function(){
+    var selected = this.options[this.selectedIndex].value; /* the option chosen */
+    setStyleSource (selected);
+    saveStyleSource (selected);
+  });
+</script>
+
+</header>
+<div class="container"><div id="module-header"><h1>Data.List.Fresh.Elem</h1><pre></pre></div><code></code><h2>Definitions</h2><dl class="decls"><dt id="Data.List.Fresh.Elem.Elem"><code><span class="keyword">data</span>&ensp;<a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.Elem"><span class="name type">Elem</span></a>&ensp;:&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructors</b>:<br><dl class="decls">  <dt id="Data.List.Fresh.Elem.Here"><code><a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.Here"><span class="name constructor">Here</span></a>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.Elem"><span class="name type">Elem</span></a>&ensp;<span class="boundvar">x</span>&ensp;(<span class="boundvar">x</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(::)"><span class="name constructor">::</span></a>&ensp;<span class="boundvar">xs</span>)</code></dt>  <dt id="Data.List.Fresh.Elem.There"><code><a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.There"><span class="name constructor">There</span></a>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.Elem"><span class="name type">Elem</span></a>&ensp;<span class="boundvar">y</span>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.Elem"><span class="name type">Elem</span></a>&ensp;<span class="boundvar">y</span>&ensp;(<span class="boundvar">x</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(::)"><span class="name constructor">::</span></a>&ensp;<span class="boundvar">xs</span>)</code></dt></dl><br>  <b>Hints</b>:<br><dl class="decls">  <dt id="$resolved6861"><code><span class="type resolved" title="Prelude.Uninhabited.Uninhabited"><span class="name type">Uninhabited</span></span>&ensp;(<a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.Here"><span class="name constructor">Here</span></a>&ensp;<span class="keyword">=</span>&ensp;<a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.There"><span class="name constructor">There</span></a>&ensp;<span class="boundvar">e</span>)</code></dt>  <dt id="$resolved6862"><code><span class="type resolved" title="Prelude.Uninhabited.Uninhabited"><span class="name type">Uninhabited</span></span>&ensp;(<a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.There"><span class="name constructor">There</span></a>&ensp;<span class="boundvar">e</span>&ensp;<span class="keyword">=</span>&ensp;<a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.Here"><span class="name constructor">Here</span></a>)</code></dt></dl></dd><dt id="Data.List.Fresh.Elem.(.recall)"><code><a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.(.recall)"><span class="name function">.recall</span></a>&ensp;:&ensp;(<span class="boundvar">xs</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.Elem"><span class="name type">Elem</span></a>&ensp;<span class="boundvar">x</span>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Elem.recallId"><code><a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.recallId"><span class="name function">recallId</span></a>&ensp;:&ensp;(<span class="boundvar">xs</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">pos</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.Elem"><span class="name type">Elem</span></a>&ensp;<span class="boundvar">x</span>&ensp;<span class="boundvar">xs</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">xs</span>&ensp;<a class="type" href="Data.List.Fresh.Elem.html#Data.List.Fresh.Elem.(.recall)"><span class="name function">.recall</span></a>&ensp;<span class="boundvar">pos</span>&ensp;<span class="keyword">=</span>&ensp;<span class="boundvar">x</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd></dl></div><footer>Produced by Idris 2 version 0.7.0</footer></body></html>
\ No newline at end of file
diff --git a/docs/Data.List.Fresh.Quantifiers.SmartConstructors.html b/docs/Data.List.Fresh.Quantifiers.SmartConstructors.html
index a26c10e..f901c4e 100644
--- a/docs/Data.List.Fresh.Quantifiers.SmartConstructors.html
+++ b/docs/Data.List.Fresh.Quantifiers.SmartConstructors.html
@@ -1 +1,64 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>Data.List.Fresh.Quantifiers.SmartConstructors</title><link rel="stylesheet" href="../styles.css"></head><body class="namespace"><header><strong>Idris2Doc</strong> : Data.List.Fresh.Quantifiers.SmartConstructors<nav><a href="../index.html">Index</a></nav></header><div class="container"><div id="moduleHeader"><h1>Data.List.Fresh.Quantifiers.SmartConstructors</h1><p></p></div><dl class="decls"><dt id="Data.List.Fresh.Quantifiers.SmartConstructors.::"><a class="type" href="Data.List.Fresh.Quantifiers.SmartConstructors.html#Data.List.Fresh.Quantifiers.SmartConstructors.::"><span class="name function">(::)</span></a>&ensp;:&ensp;{<!-- ann ignored START -->auto<!-- ann END -->&ensp;<!-- ann ignored START -->conArg<!-- ann END -->&ensp;:&ensp;<span class="type resolved" title="Decidable.Equality.Core.DecEq"><span class="name type">DecEq</span></span>&ensp;<!-- ann ignored START -->a<!-- ann END -->}&ensp;-&gt;&ensp;(<!-- ann ignored START -->xpx<!-- ann END -->&ensp;:&ensp;<span class="type resolved" title="Builtin.DPair.DPair"><span class="name type">DPair</span></span>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;(\<!-- ann ignored START -->x<!-- ann END -->&ensp;=&gt;&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->x<!-- ann END -->))&ensp;-&gt;&ensp;{<!-- ann ignored START -->auto<!-- ann END -->&ensp;0&ensp;<!-- ann ignored START -->pos<!-- ann END -->&ensp;:&ensp;<span class="type resolved" title="Decidable.Decidable.IsYes"><span class="name type">IsYes</span></span>&ensp;(<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.isElem"><span class="name function">isElem</span></a>&ensp;(<!-- ann ignored START -->xpx<!-- ann END -->&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.fst)"><span class="name function">.fst</span></span>)&ensp;<!-- ann ignored START -->xs<!-- ann END -->)}&ensp;-&gt;&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;(<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.remove"><span class="name function">remove</span></a>&ensp;(<a class="type" href="Decidable.Decidable.Extra1.html#Decidable.Decidable.Extra1.toWitness"><span class="name function">toWitness</span></a>&ensp;<!-- ann ignored START -->pos<!-- ann END -->))&ensp;-&gt;&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Fixity Declaration</b>:&ensp;infixr&ensp;operator,&ensp;level&ensp;7</dd><dt id="Data.List.Fresh.Quantifiers.SmartConstructors.mkAny"><a class="type" href="Data.List.Fresh.Quantifiers.SmartConstructors.html#Data.List.Fresh.Quantifiers.SmartConstructors.mkAny"><span class="name function">mkAny</span></a>&ensp;:&ensp;{<!-- ann ignored START -->auto<!-- ann END -->&ensp;<!-- ann ignored START -->conArg<!-- ann END -->&ensp;:&ensp;<span class="type resolved" title="Decidable.Equality.Core.DecEq"><span class="name type">DecEq</span></span>&ensp;<!-- ann ignored START -->a<!-- ann END -->}&ensp;-&gt;&ensp;(<!-- ann ignored START -->x<!-- ann END -->&ensp;:&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;-&gt;&ensp;{<!-- ann ignored START -->auto<!-- ann END -->&ensp;0&ensp;<!-- ann ignored START -->_<!-- ann END -->&ensp;:&ensp;<span class="type resolved" title="Decidable.Decidable.IsYes"><span class="name type">IsYes</span></span>&ensp;(<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.isElem"><span class="name function">isElem</span></a>&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END -->)}&ensp;-&gt;&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd></dl></div><footer>Produced by Idris 2 version 0.4.0-c86184575</footer></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="en">
+
+<head>
+  <meta charset="utf-8">
+  <title>Data.List.Fresh.Quantifiers.SmartConstructors</title>
+  <link rel="stylesheet" type="text/css" id="preferredStyle" href="../default.css">
+  <script>
+    /* Updates the stylesheet to use the preferred one.
+       Note that we set the link to root ++ sourceLoc because the config
+       is shared across the whole website, so the root may differ from
+       page to page.
+    */
+    function setStyleSource (sourceLoc) {
+      document.getElementById("preferredStyle").href = "../" + sourceLoc + ".css";
+      document.getElementById("selectPreferredStyle").value = sourceLoc;
+    }
+    /* Initialises the preferred style sheet:
+       1. if there is a stored value then use that
+          otherwise select the default
+       2. set both the css link href & the drop down menu selected option
+    */
+    function initStyleSource () {
+      var preferredStyle = localStorage.getItem("stylefile");
+      if (preferredStyle !== null) {
+        setStyleSource(preferredStyle);
+      } else {
+        setStyleSource("default");
+      };
+    }
+    function saveStyleSource (preferredStyle) {
+      localStorage.stylefile = preferredStyle;
+    }
+    </script>
+</head>
+
+<body class="namespace">
+<header>
+  <strong>Idris2Doc</strong> : Data.List.Fresh.Quantifiers.SmartConstructors
+  <nav><a href="../index.html">Index</a>
+
+  <select id="selectPreferredStyle">
+    <option value="default">Default</option>
+<option value="alternative">Alternative</option>
+<option value="blackandwhite">Black & White</option>
+
+  </select>
+  </nav>
+
+  <script>
+  /* We start by initialising the style source */
+  initStyleSource();
+
+  /* This listens for changes on the drop down menu and updates the
+     css used for the current page when a selection is made.
+  */
+  document.getElementById("selectPreferredStyle").addEventListener("change", function(){
+    var selected = this.options[this.selectedIndex].value; /* the option chosen */
+    setStyleSource (selected);
+    saveStyleSource (selected);
+  });
+</script>
+
+</header>
+<div class="container"><div id="module-header"><h1>Data.List.Fresh.Quantifiers.SmartConstructors</h1><pre></pre></div><code></code><h2>Definitions</h2><dl class="decls"><dt id="Data.List.Fresh.Quantifiers.SmartConstructors.mkAny"><code><a class="type" href="Data.List.Fresh.Quantifiers.SmartConstructors.html#Data.List.Fresh.Quantifiers.SmartConstructors.mkAny"><span class="name function">mkAny</span></a>&ensp;:&ensp;{<span class="keyword">auto</span>&ensp;<span class="boundvar">{conArg:3089}</span>&ensp;:&ensp;<span class="type resolved" title="Decidable.Equality.Core.DecEq"><span class="name type">DecEq</span></span>&ensp;<span class="boundvar">a</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">x</span>&ensp;:&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">auto</span>&ensp;<span class="keyword">0</span>&ensp;<span class="boundvar">_</span>&ensp;:&ensp;<span class="type resolved" title="Decidable.Decidable.IsYes"><span class="name type">IsYes</span></span>&ensp;(<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.isElem"><span class="name function">isElem</span></a>&ensp;<span class="boundvar">x</span>&ensp;<span class="boundvar">xs</span>)}&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">x</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Quantifiers.SmartConstructors.(::)"><code><a class="type" href="Data.List.Fresh.Quantifiers.SmartConstructors.html#Data.List.Fresh.Quantifiers.SmartConstructors.(::)"><span class="name function">(::)</span></a>&ensp;:&ensp;{<span class="keyword">auto</span>&ensp;<span class="boundvar">{conArg:3180}</span>&ensp;:&ensp;<span class="type resolved" title="Decidable.Equality.Core.DecEq"><span class="name type">DecEq</span></span>&ensp;<span class="boundvar">a</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">xpx</span>&ensp;:&ensp;(<span class="boundvar">x</span>&ensp;:&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">**</span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">x</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">auto</span>&ensp;<span class="keyword">0</span>&ensp;<span class="boundvar">pos</span>&ensp;:&ensp;<span class="type resolved" title="Decidable.Decidable.IsYes"><span class="name type">IsYes</span></span>&ensp;(<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.isElem"><span class="name function">isElem</span></a>&ensp;(<span class="boundvar">xpx</span>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.fst)"><span class="name function">.fst</span></span>)&ensp;<span class="boundvar">xs</span>)}&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">p</span>&ensp;(<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.remove"><span class="name function">remove</span></a>&ensp;(<a class="type" href="Decidable.Decidable.Extra1.html#Decidable.Decidable.Extra1.toWitness"><span class="name function">toWitness</span></a>&ensp;<span class="boundvar">pos</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Fixity Declaration</b>:&ensp;infixr&ensp;operator,&ensp;level&ensp;7</dd></dl></div><footer>Produced by Idris 2 version 0.7.0</footer></body></html>
\ No newline at end of file
diff --git a/docs/Data.List.Fresh.Quantifiers.html b/docs/Data.List.Fresh.Quantifiers.html
index c7cd525..3479f02 100644
--- a/docs/Data.List.Fresh.Quantifiers.html
+++ b/docs/Data.List.Fresh.Quantifiers.html
@@ -1 +1,64 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>Data.List.Fresh.Quantifiers</title><link rel="stylesheet" href="../styles.css"></head><body class="namespace"><header><strong>Idris2Doc</strong> : Data.List.Fresh.Quantifiers<nav><a href="../index.html">Index</a></nav></header><div class="container"><div id="moduleHeader"><h1>Data.List.Fresh.Quantifiers</h1><p></p></div><dl class="decls"><dt id="Data.List.Fresh.Quantifiers.!!"><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.!!"><span class="name function">(!!)</span></a>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END -->&ensp;-&gt;&ensp;(<!-- ann ignored START -->pos<!-- ann END -->&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<!-- ann ignored START -->q<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;(<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.lookup"><span class="name function">lookup</span></a>&ensp;<!-- ann ignored START -->pos<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Fixity Declaration</b>:&ensp;infixr&ensp;operator,&ensp;level&ensp;4</dd><dt id="Data.List.Fresh.Quantifiers.any"><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.any"><span class="name function">any</span></a>&ensp;:&ensp;((<!-- ann ignored START -->x<!-- ann END -->&ensp;:&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Types.Dec"><span class="name type">Dec</span></span>&ensp;(<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->x<!-- ann END -->))&ensp;-&gt;&ensp;(<!-- ann ignored START -->xs<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Types.Dec"><span class="name type">Dec</span></span>&ensp;(<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.Quantifiers.insertLookedup"><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.insertLookedup"><span class="name function">insertLookedup</span></a>&ensp;:&ensp;(<!-- ann ignored START -->pos<!-- ann END -->&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<!-- ann ignored START -->q<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;(<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.lookup"><span class="name function">lookup</span></a>&ensp;<!-- ann ignored START -->pos<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;(<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.remove"><span class="name function">remove</span></a>&ensp;<!-- ann ignored START -->pos<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.Quantifiers.insertWith"><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.insertWith"><span class="name function">insertWith</span></a>&ensp;:&ensp;((<!-- ann ignored START -->y<!-- ann END -->&ensp;:&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->q<!-- ann END -->&ensp;<!-- ann ignored START -->y<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->y<!-- ann END -->)&ensp;-&gt;&ensp;(<!-- ann ignored START -->pos<!-- ann END -->&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<!-- ann ignored START -->q<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;(<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.remove"><span class="name function">remove</span></a>&ensp;<!-- ann ignored START -->pos<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.Quantifiers.isElem"><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.isElem"><span class="name function">isElem</span></a>&ensp;:&ensp;<span class="type resolved" title="Decidable.Equality.Core.DecEq"><span class="name type">DecEq</span></span>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;=&gt;&ensp;(<!-- ann ignored START -->x<!-- ann END -->&ensp;:&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;-&gt;&ensp;(<!-- ann ignored START -->xs<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Types.Dec"><span class="name type">Dec</span></span>&ensp;(<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;(\<!-- ann ignored START -->{arg:0}<!-- ann END -->&ensp;=&gt;&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;=&ensp;<!-- ann ignored START -->arg<!-- ann END -->)&ensp;<!-- ann ignored START -->xs<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.Quantifiers.lookup"><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.lookup"><span class="name function">lookup</span></a>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->a<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.Quantifiers.lookupWithProof"><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.lookupWithProof"><span class="name function">lookupWithProof</span></a>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Builtin.DPair.DPair"><span class="name type">DPair</span></span>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;(\<!-- ann ignored START -->x<!-- ann END -->&ensp;=&gt;&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->x<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.Quantifiers.remove"><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.remove"><span class="name function">remove</span></a>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.Quantifiers.sequence"><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.sequence"><span class="name function">sequence</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Interfaces.Applicative"><span class="name type">Applicative</span></span>&ensp;<!-- ann ignored START -->f<!-- ann END -->&ensp;=&gt;&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;(<!-- ann ignored START -->f<!-- ann END -->&ensp;<span class="type resolved" title="Prelude.Basics.."><span class="name function">.</span></span>&ensp;<!-- ann ignored START -->p<!-- ann END -->)&ensp;<!-- ann ignored START -->xs<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->f<!-- ann END -->&ensp;(<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.Quantifiers.tabulate"><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.tabulate"><span class="name function">tabulate</span></a>&ensp;:&ensp;((<!-- ann ignored START -->x<!-- ann END -->&ensp;:&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->x<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.Quantifiers.traverse"><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.traverse"><span class="name function">traverse</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Interfaces.Applicative"><span class="name type">Applicative</span></span>&ensp;<!-- ann ignored START -->f<!-- ann END -->&ensp;=&gt;&ensp;((<!-- ann ignored START -->x<!-- ann END -->&ensp;:&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->f<!-- ann END -->&ensp;(<!-- ann ignored START -->q<!-- ann END -->&ensp;<!-- ann ignored START -->x<!-- ann END -->))&ensp;-&gt;&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->f<!-- ann END -->&ensp;(<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<!-- ann ignored START -->q<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total</dd></dl></div><footer>Produced by Idris 2 version 0.4.0-c86184575</footer></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="en">
+
+<head>
+  <meta charset="utf-8">
+  <title>Data.List.Fresh.Quantifiers</title>
+  <link rel="stylesheet" type="text/css" id="preferredStyle" href="../default.css">
+  <script>
+    /* Updates the stylesheet to use the preferred one.
+       Note that we set the link to root ++ sourceLoc because the config
+       is shared across the whole website, so the root may differ from
+       page to page.
+    */
+    function setStyleSource (sourceLoc) {
+      document.getElementById("preferredStyle").href = "../" + sourceLoc + ".css";
+      document.getElementById("selectPreferredStyle").value = sourceLoc;
+    }
+    /* Initialises the preferred style sheet:
+       1. if there is a stored value then use that
+          otherwise select the default
+       2. set both the css link href & the drop down menu selected option
+    */
+    function initStyleSource () {
+      var preferredStyle = localStorage.getItem("stylefile");
+      if (preferredStyle !== null) {
+        setStyleSource(preferredStyle);
+      } else {
+        setStyleSource("default");
+      };
+    }
+    function saveStyleSource (preferredStyle) {
+      localStorage.stylefile = preferredStyle;
+    }
+    </script>
+</head>
+
+<body class="namespace">
+<header>
+  <strong>Idris2Doc</strong> : Data.List.Fresh.Quantifiers
+  <nav><a href="../index.html">Index</a>
+
+  <select id="selectPreferredStyle">
+    <option value="default">Default</option>
+<option value="alternative">Alternative</option>
+<option value="blackandwhite">Black & White</option>
+
+  </select>
+  </nav>
+
+  <script>
+  /* We start by initialising the style source */
+  initStyleSource();
+
+  /* This listens for changes on the drop down menu and updates the
+     css used for the current page when a selection is made.
+  */
+  document.getElementById("selectPreferredStyle").addEventListener("change", function(){
+    var selected = this.options[this.selectedIndex].value; /* the option chosen */
+    setStyleSource (selected);
+    saveStyleSource (selected);
+  });
+</script>
+
+</header>
+<div class="container"><div id="module-header"><h1>Data.List.Fresh.Quantifiers</h1><pre></pre></div><code></code><h2>Definitions</h2><dl class="decls"><dt id="Data.List.Fresh.Quantifiers.Any.Any"><code><span class="keyword">data</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;:&ensp;(<span class="keyword">0</span>&ensp;<span class="boundvar">_</span>&ensp;:&ensp;(<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructors</b>:<br><dl class="decls">  <dt id="Data.List.Fresh.Quantifiers.Any.Here"><code><span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Here"><span class="name constructor">Here</span></span>&ensp;:&ensp;{<span class="keyword">auto</span>&ensp;<span class="keyword">0</span>&ensp;<span class="boundvar">fresh</span>&ensp;:&ensp;<span class="boundvar">x</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<span class="boundvar">xs</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">x</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<span class="boundvar">p</span>&ensp;(<span class="boundvar">x</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(::)"><span class="name constructor">::</span></a>&ensp;<span class="boundvar">xs</span>)</code></dt>  <dt id="Data.List.Fresh.Quantifiers.Any.There"><code><span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.There"><span class="name constructor">There</span></span>&ensp;:&ensp;{<span class="keyword">auto</span>&ensp;<span class="keyword">0</span>&ensp;<span class="boundvar">fresh</span>&ensp;:&ensp;<span class="boundvar">x</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<span class="boundvar">xs</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<span class="boundvar">p</span>&ensp;(<span class="boundvar">x</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(::)"><span class="name constructor">::</span></a>&ensp;<span class="boundvar">xs</span>)</code></dt></dl><br>  <b>Hint</b>:&ensp;<dl class="decls"><dt id="$resolved6360"><code><span class="type resolved" title="Prelude.Uninhabited.Uninhabited"><span class="name type">Uninhabited</span></span>&ensp;(<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<span class="boundvar">p</span>&ensp;[])</code></dt></dl></dd><dt id="Data.List.Fresh.Quantifiers.All.All"><code><span class="keyword">data</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;:&ensp;(<span class="keyword">0</span>&ensp;<span class="boundvar">_</span>&ensp;:&ensp;(<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructors</b>:<br><dl class="decls">  <dt id="Data.List.Fresh.Quantifiers.All.Nil"><code><span class="type resolved" title="Data.List.Fresh.Quantifiers.All.Nil"><span class="name constructor">Nil</span></span>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">p</span>&ensp;[]</code></dt>  <dt id="Data.List.Fresh.Quantifiers.All.(::)"><code><span class="type resolved" title="Data.List.Fresh.Quantifiers.All.(::)"><span class="name constructor">(::)</span></span>&ensp;:&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">x</span>&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">auto</span>&ensp;<span class="keyword">0</span>&ensp;<span class="boundvar">fresh</span>&ensp;:&ensp;<span class="boundvar">x</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<span class="boundvar">xs</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">p</span>&ensp;(<span class="boundvar">x</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(::)"><span class="name constructor">::</span></a>&ensp;<span class="boundvar">xs</span>)</code></dt></dl></dd><dt id="Data.List.Fresh.Quantifiers.lookupWithProof"><code><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.lookupWithProof"><span class="name function">lookupWithProof</span></a>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">x</span>&ensp;:&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">**</span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">x</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Quantifiers.lookup"><code><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.lookup"><span class="name function">lookup</span></a>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Quantifiers.remove"><code><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.remove"><span class="name function">remove</span></a>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Quantifiers.(!!)"><code><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.(!!)"><span class="name function">(!!)</span></a>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">pos</span>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<span class="boundvar">q</span>&ensp;<span class="boundvar">xs</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">p</span>&ensp;(<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.lookup"><span class="name function">lookup</span></a>&ensp;<span class="boundvar">pos</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Fixity Declaration</b>:&ensp;infixr&ensp;operator,&ensp;level&ensp;4</dd><dt id="Data.List.Fresh.Quantifiers.(.toFreshList)"><code><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.(.toFreshList)"><span class="name function">.toFreshList</span></a>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;(<span class="boundvar">x</span>&ensp;:&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">**</span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">x</span>)&ensp;(<span class="boundvar">neq</span>&ensp;`<span class="type resolved" title="Prelude.Basics.on"><span class="name function">on</span></span>`&ensp;<span class="type resolved" title="Builtin.DPair.DPair.(.fst)"><span class="name function">.fst</span></span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Quantifiers.(.toFreshListFreshness)"><code><span class="keyword">0</span>&ensp;<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.(.toFreshListFreshness)"><span class="name function">.toFreshListFreshness</span></a>&ensp;:&ensp;(<span class="boundvar">rec</span>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">y</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">y</span>&ensp;<span class="keyword">**</span>&ensp;<span class="boundvar">{_:3728}</span>)&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<span class="boundvar">rec</span>&ensp;<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.(.toFreshList)"><span class="name function">.toFreshList</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Quantifiers.traverse"><code><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.traverse"><span class="name function">traverse</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Interfaces.Applicative"><span class="name type">Applicative</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="keyword">=&gt;</span>&ensp;((<span class="boundvar">x</span>&ensp;:&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">x</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">f</span>&ensp;(<span class="boundvar">q</span>&ensp;<span class="boundvar">x</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">f</span>&ensp;(<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">q</span>&ensp;<span class="boundvar">xs</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Quantifiers.sequence"><code><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.sequence"><span class="name function">sequence</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Interfaces.Applicative"><span class="name type">Applicative</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="keyword">=&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;(<span class="boundvar">f</span>&ensp;<span class="type resolved" title="Prelude.Basics.(.)"><span class="name function">.</span></span>&ensp;<span class="boundvar">p</span>)&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">f</span>&ensp;(<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Quantifiers.any"><code><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.any"><span class="name function">any</span></a>&ensp;:&ensp;((<span class="boundvar">x</span>&ensp;:&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Types.Dec"><span class="name type">Dec</span></span>&ensp;(<span class="boundvar">p</span>&ensp;<span class="boundvar">x</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">xs</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Types.Dec"><span class="name type">Dec</span></span>&ensp;(<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Quantifiers.isElem"><code><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.isElem"><span class="name function">isElem</span></a>&ensp;:&ensp;<span class="type resolved" title="Decidable.Equality.Core.DecEq"><span class="name type">DecEq</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">=&gt;</span>&ensp;(<span class="boundvar">x</span>&ensp;:&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">xs</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Types.Dec"><span class="name type">Dec</span></span>&ensp;(<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;(\<span class="boundvar">{arg:0}</span>&ensp;<span class="keyword">=&gt;</span>&ensp;<span class="boundvar">x</span>&ensp;<span class="keyword">=</span>&ensp;<span class="boundvar">{arg:0}</span>)&ensp;<span class="boundvar">xs</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Quantifiers.(.update)"><code><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.(.update)"><span class="name function">.update</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Interfaces.Applicative"><span class="name type">Applicative</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="keyword">=&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">pos</span>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<span class="boundvar">q</span>&ensp;<span class="boundvar">xs</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">p</span>&ensp;(<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.lookup"><span class="name function">lookup</span></a>&ensp;<span class="boundvar">pos</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">f</span>&ensp;(<span class="boundvar">p</span>&ensp;(<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.lookup"><span class="name function">lookup</span></a>&ensp;<span class="boundvar">pos</span>)))&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">f</span>&ensp;(<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Quantifiers.Any.map"><code><span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.map"><span class="name function">map</span></span>&ensp;:&ensp;((<span class="boundvar">x</span>&ensp;:&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">x</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">q</span>&ensp;<span class="boundvar">x</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<span class="boundvar">q</span>&ensp;<span class="boundvar">xs</span></code></dt><dd><pre>  Map a function</pre><br>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Quantifiers.All.map"><code><span class="type resolved" title="Data.List.Fresh.Quantifiers.All.map"><span class="name function">map</span></span>&ensp;:&ensp;((<span class="boundvar">x</span>&ensp;:&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">x</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">q</span>&ensp;<span class="boundvar">x</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">q</span>&ensp;<span class="boundvar">xs</span></code></dt><dd><pre>  Map a function</pre><br>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Quantifiers.All.mapSupport"><code><span class="type resolved" title="Data.List.Fresh.Quantifiers.All.mapSupport"><span class="name function">mapSupport</span></span>&ensp;:&ensp;((<span class="boundvar">pos</span>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">xs</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">q</span>&ensp;(<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.lookup"><span class="name function">lookup</span></a>&ensp;<span class="boundvar">pos</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">q</span>&ensp;<span class="boundvar">xs</span></code></dt><dd><pre>  Map a function restricted to the support of the list</pre><br>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Quantifiers.tabulate"><code><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.tabulate"><span class="name function">tabulate</span></a>&ensp;:&ensp;((<span class="boundvar">x</span>&ensp;:&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">x</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Quantifiers.All.foldl"><code><span class="type resolved" title="Data.List.Fresh.Quantifiers.All.foldl"><span class="name function">foldl</span></span>&ensp;:&ensp;(<span class="boundvar">b</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;(<span class="type resolved" title="Prelude.Basics.const"><span class="name function">const</span></span>&ensp;<span class="boundvar">a</span>)&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Quantifiers.All.foldr"><code><span class="type resolved" title="Data.List.Fresh.Quantifiers.All.foldr"><span class="name function">foldr</span></span>&ensp;:&ensp;(<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;(<span class="type resolved" title="Prelude.Basics.const"><span class="name function">const</span></span>&ensp;<span class="boundvar">a</span>)&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Quantifiers.insertWith"><code><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.insertWith"><span class="name function">insertWith</span></a>&ensp;:&ensp;((<span class="boundvar">y</span>&ensp;:&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">q</span>&ensp;<span class="boundvar">y</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">y</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">pos</span>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<span class="boundvar">q</span>&ensp;<span class="boundvar">xs</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">p</span>&ensp;(<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.remove"><span class="name function">remove</span></a>&ensp;<span class="boundvar">pos</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Quantifiers.insertLookedup"><code><a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.insertLookedup"><span class="name function">insertLookedup</span></a>&ensp;:&ensp;(<span class="boundvar">pos</span>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<span class="boundvar">q</span>&ensp;<span class="boundvar">xs</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">p</span>&ensp;(<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.lookup"><span class="name function">lookup</span></a>&ensp;<span class="boundvar">pos</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">p</span>&ensp;(<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.remove"><span class="name function">remove</span></a>&ensp;<span class="boundvar">pos</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">xs</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd></dl></div><footer>Produced by Idris 2 version 0.7.0</footer></body></html>
\ No newline at end of file
diff --git a/docs/Data.List.Fresh.html b/docs/Data.List.Fresh.html
index dba7245..acc4c5c 100644
--- a/docs/Data.List.Fresh.html
+++ b/docs/Data.List.Fresh.html
@@ -1,11 +1,70 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>Data.List.Fresh</title><link rel="stylesheet" href="../styles.css"></head><body class="namespace"><header><strong>Idris2Doc</strong> : Data.List.Fresh<nav><a href="../index.html">Index</a></nav></header><div class="container"><div id="moduleHeader"><h1>Data.List.Fresh</h1><p>Fresh lists, a variant of Catarina Coquand's contexts in "A
-Formalised Proof of the Soundness and Completeness of a Simply
-Typed Lambda-Calculus with Explicit Substitutions"
+<!DOCTYPE html><html lang="en">
+
+<head>
+  <meta charset="utf-8">
+  <title>Data.List.Fresh</title>
+  <link rel="stylesheet" type="text/css" id="preferredStyle" href="../default.css">
+  <script>
+    /* Updates the stylesheet to use the preferred one.
+       Note that we set the link to root ++ sourceLoc because the config
+       is shared across the whole website, so the root may differ from
+       page to page.
+    */
+    function setStyleSource (sourceLoc) {
+      document.getElementById("preferredStyle").href = "../" + sourceLoc + ".css";
+      document.getElementById("selectPreferredStyle").value = sourceLoc;
+    }
+    /* Initialises the preferred style sheet:
+       1. if there is a stored value then use that
+          otherwise select the default
+       2. set both the css link href & the drop down menu selected option
+    */
+    function initStyleSource () {
+      var preferredStyle = localStorage.getItem("stylefile");
+      if (preferredStyle !== null) {
+        setStyleSource(preferredStyle);
+      } else {
+        setStyleSource("default");
+      };
+    }
+    function saveStyleSource (preferredStyle) {
+      localStorage.stylefile = preferredStyle;
+    }
+    </script>
+</head>
+
+<body class="namespace">
+<header>
+  <strong>Idris2Doc</strong> : Data.List.Fresh
+  <nav><a href="../index.html">Index</a>
+
+  <select id="selectPreferredStyle">
+    <option value="default">Default</option>
+<option value="alternative">Alternative</option>
+<option value="blackandwhite">Black & White</option>
+
+  </select>
+  </nav>
+
+  <script>
+  /* We start by initialising the style source */
+  initStyleSource();
+
+  /* This listens for changes on the drop down menu and updates the
+     css used for the current page when a selection is made.
+  */
+  document.getElementById("selectPreferredStyle").addEventListener("change", function(){
+    var selected = this.options[this.selectedIndex].value; /* the option chosen */
+    setStyleSource (selected);
+    saveStyleSource (selected);
+  });
+</script>
 
-Based directly on Agda's fresh lists:
-http://agda.github.io/agda-stdlib/Data.List.Fresh.htmlFresh lists, a variant of Catarina Coquand's contexts in "A
+</header>
+<div class="container"><div id="module-header"><h1>Data.List.Fresh</h1><pre>Fresh lists, a variant of Catarina Coquand&apos;s contexts in &quot;A
 Formalised Proof of the Soundness and Completeness of a Simply
-Typed Lambda-Calculus with Explicit Substitutions"
+Typed Lambda-Calculus with Explicit Substitutions&quot;
 
-Based directly on Agda's fresh lists:
-http://agda.github.io/agda-stdlib/Data.List.Fresh.html</p></div><dl class="decls"><dt id="Data.List.Fresh.#"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">(#)</span></a>&ensp;:&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Fixity Declaration</b>:&ensp;infix&ensp;operator,&ensp;level&ensp;5</dd><dt id="Data.List.Fresh.##"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.##"><span class="name function">(##)</span></a>&ensp;:&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span></dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Fixity Declaration</b>:&ensp;infix&ensp;operator,&ensp;level&ensp;4</dd><dt id="Data.List.Fresh.BRel"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.BRel"><span class="name function">BRel</span></a>&ensp;:&ensp;<span class="name type">Type</span>&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.Fresh"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.Fresh"><span class="name function">Fresh</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Basics.SnocList"><span class="name type">SnocList</span></span>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.FreshList"><!-- ann ignored START -->data<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;:&ensp;(<!-- ann ignored START -->a<!-- ann END -->&ensp;:&ensp;<span class="name type">Type</span>)&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.BRel"><span class="name function">BRel</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Constructors</b>:<br><dl class="decls">  <dt id="Data.List.Fresh.Nil"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.Nil"><span class="name constructor">Nil</span></a>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END --></dt>  <dt id="Data.List.Fresh.::"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.::"><span class="name constructor">(::)</span></a>&ensp;:&ensp;(<!-- ann ignored START -->x<!-- ann END -->&ensp;:&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;-&gt;&ensp;(<!-- ann ignored START -->xs<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->)&ensp;-&gt;&ensp;{<!-- ann ignored START -->auto<!-- ann END -->&ensp;0&ensp;<!-- ann ignored START -->_<!-- ann END -->&ensp;:&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">#</span></a>&ensp;<!-- ann ignored START -->xs<!-- ann END -->}&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END --></dt></dl></dd><dt id="Data.List.Fresh.cast"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.cast"><span class="name function">cast</span></a>&ensp;:&ensp;(<!-- ann ignored START -->sx<!-- ann END -->&ensp;:&ensp;<span class="type resolved" title="Prelude.Basics.SnocList"><span class="name type">SnocList</span></span>&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;-&gt;&ensp;{<!-- ann ignored START -->auto<!-- ann END -->&ensp;0&ensp;<!-- ann ignored START -->_<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.Fresh"><span class="name function">Fresh</span></a>&ensp;<!-- ann ignored START -->sx<!-- ann END -->}&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.castAux"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.castAux"><span class="name function">castAux</span></a>&ensp;:&ensp;(<!-- ann ignored START -->sx<!-- ann END -->&ensp;:&ensp;<span class="type resolved" title="Prelude.Basics.SnocList"><span class="name type">SnocList</span></span>&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;-&gt;&ensp;(<!-- ann ignored START -->xs<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->)&ensp;-&gt;&ensp;{<!-- ann ignored START -->auto<!-- ann END -->&ensp;0&ensp;<!-- ann ignored START -->_<!-- ann END -->&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Aux.FreshSnoc"><span class="name function">FreshSnoc</span></span>&ensp;<!-- ann ignored START -->sx<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END -->}&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.decideFreshness"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.decideFreshness"><span class="name function">decideFreshness</span></a>&ensp;:&ensp;(<!-- ann ignored START -->x<!-- ann END -->&ensp;:&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;-&gt;&ensp;(<!-- ann ignored START -->ys<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Types.Dec"><span class="name type">Dec</span></span>&ensp;(<!-- ann ignored START -->x<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">#</span></a>&ensp;<!-- ann ignored START -->ys<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.drop"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.drop"><span class="name function">drop</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.dropWhile"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.dropWhile"><span class="name function">dropWhile</span></a>&ensp;:&ensp;(<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span>)&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.dropWhileFreshness"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.dropWhileFreshness"><span class="name function">dropWhileFreshness</span></a>&ensp;:&ensp;(<!-- ann ignored START -->pred<!-- ann END -->&ensp;:&ensp;(<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span>))&ensp;-&gt;&ensp;(<!-- ann ignored START -->xs<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->y<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">#</span></a>&ensp;<!-- ann ignored START -->xs<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->y<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">#</span></a>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.dropWhile"><span class="name function">dropWhile</span></a>&ensp;<!-- ann ignored START -->pred<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.filter"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.filter"><span class="name function">filter</span></a>&ensp;:&ensp;(<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span>)&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.filterFreshness"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.filterFreshness"><span class="name function">filterFreshness</span></a>&ensp;:&ensp;(<!-- ann ignored START -->pred<!-- ann END -->&ensp;:&ensp;(<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span>))&ensp;-&gt;&ensp;(<!-- ann ignored START -->xs<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->y<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">#</span></a>&ensp;<!-- ann ignored START -->xs<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->y<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">#</span></a>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.filter"><span class="name function">filter</span></a>&ensp;<!-- ann ignored START -->pred<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.foldl"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.foldl"><span class="name function">foldl</span></a>&ensp;:&ensp;(<!-- ann ignored START -->b<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->b<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->b<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->b<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.foldr"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.foldr"><span class="name function">foldr</span></a>&ensp;:&ensp;(<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->b<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->b<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->b<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->b<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.fromMaybe"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.fromMaybe"><span class="name function">fromMaybe</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.head"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.head"><span class="name function">head</span></a>&ensp;:&ensp;(<!-- ann ignored START -->xs<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Data.List.Fresh.View.NonEmpty"><span class="name type">NonEmpty</span></span>&ensp;<!-- ann ignored START -->xs<!-- ann END -->&ensp;=&gt;&ensp;<!-- ann ignored START -->a<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.headFreshness"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.headFreshness"><span class="name function">headFreshness</span></a>&ensp;:&ensp;(0&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;:&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;-&gt;&ensp;(<!-- ann ignored START -->ys<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->)&ensp;-&gt;&ensp;{<!-- ann ignored START -->auto<!-- ann END -->&ensp;<!-- ann ignored START -->isNonEmpty<!-- ann END -->&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.View.NonEmpty"><span class="name type">NonEmpty</span></span>&ensp;<!-- ann ignored START -->ys<!-- ann END -->}&ensp;-&gt;&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">#</span></a>&ensp;<!-- ann ignored START -->ys<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Data.So.So"><span class="name type">So</span></span>&ensp;(<!-- ann ignored START -->neq<!-- ann END -->&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.head"><span class="name function">head</span></a>&ensp;<!-- ann ignored START -->ys<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.length"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.length"><span class="name function">length</span></a>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.map"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.map"><span class="name function">map</span></a>&ensp;:&ensp;{0&ensp;<!-- ann ignored START -->A<!-- ann END -->&ensp;:&ensp;<span class="name type">Type</span>}&ensp;-&gt;&ensp;{0&ensp;<!-- ann ignored START -->Aneq<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.BRel"><span class="name function">BRel</span></a>&ensp;<!-- ann ignored START -->A<!-- ann END -->}&ensp;-&gt;&ensp;{0&ensp;<!-- ann ignored START -->B<!-- ann END -->&ensp;:&ensp;<span class="name type">Type</span>}&ensp;-&gt;&ensp;{0&ensp;<!-- ann ignored START -->Bneq<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.BRel"><span class="name function">BRel</span></a>&ensp;<!-- ann ignored START -->B<!-- ann END -->}&ensp;-&gt;&ensp;(<!-- ann ignored START -->F<!-- ann END -->&ensp;:&ensp;(<!-- ann ignored START -->A<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->B<!-- ann END -->))&ensp;-&gt;&ensp;((<!-- ann ignored START -->x<!-- ann END -->&ensp;:&ensp;<!-- ann ignored START -->A<!-- ann END -->)&ensp;-&gt;&ensp;(<!-- ann ignored START -->y<!-- ann END -->&ensp;:&ensp;<!-- ann ignored START -->A<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Data.So.So"><span class="name type">So</span></span>&ensp;(<!-- ann ignored START -->Aneq<!-- ann END -->&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;<!-- ann ignored START -->y<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Data.So.So"><span class="name type">So</span></span>&ensp;(<!-- ann ignored START -->Bneq<!-- ann END -->&ensp;(<!-- ann ignored START -->F<!-- ann END -->&ensp;<!-- ann ignored START -->x<!-- ann END -->)&ensp;(<!-- ann ignored START -->F<!-- ann END -->&ensp;<!-- ann ignored START -->y<!-- ann END -->)))&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->A<!-- ann END -->&ensp;<!-- ann ignored START -->Aneq<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->B<!-- ann END -->&ensp;<!-- ann ignored START -->Bneq<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.mapFreshness"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.mapFreshness"><span class="name function">mapFreshness</span></a>&ensp;:&ensp;{0&ensp;<!-- ann ignored START -->A<!-- ann END -->&ensp;:&ensp;<span class="name type">Type</span>}&ensp;-&gt;&ensp;{0&ensp;<!-- ann ignored START -->Aneq<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.BRel"><span class="name function">BRel</span></a>&ensp;<!-- ann ignored START -->A<!-- ann END -->}&ensp;-&gt;&ensp;{0&ensp;<!-- ann ignored START -->B<!-- ann END -->&ensp;:&ensp;<span class="name type">Type</span>}&ensp;-&gt;&ensp;{0&ensp;<!-- ann ignored START -->Bneq<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.BRel"><span class="name function">BRel</span></a>&ensp;<!-- ann ignored START -->B<!-- ann END -->}&ensp;-&gt;&ensp;(<!-- ann ignored START -->F<!-- ann END -->&ensp;:&ensp;(<!-- ann ignored START -->A<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->B<!-- ann END -->))&ensp;-&gt;&ensp;(<!-- ann ignored START -->Injectivity<!-- ann END -->&ensp;:&ensp;((<!-- ann ignored START -->x<!-- ann END -->&ensp;:&ensp;<!-- ann ignored START -->A<!-- ann END -->)&ensp;-&gt;&ensp;(<!-- ann ignored START -->y<!-- ann END -->&ensp;:&ensp;<!-- ann ignored START -->A<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Data.So.So"><span class="name type">So</span></span>&ensp;(<!-- ann ignored START -->Aneq<!-- ann END -->&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;<!-- ann ignored START -->y<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Data.So.So"><span class="name type">So</span></span>&ensp;(<!-- ann ignored START -->Bneq<!-- ann END -->&ensp;(<!-- ann ignored START -->F<!-- ann END -->&ensp;<!-- ann ignored START -->x<!-- ann END -->)&ensp;(<!-- ann ignored START -->F<!-- ann END -->&ensp;<!-- ann ignored START -->y<!-- ann END -->))))&ensp;-&gt;&ensp;(<!-- ann ignored START -->ys<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->A<!-- ann END -->&ensp;<!-- ann ignored START -->Aneq<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">#</span></a>&ensp;<!-- ann ignored START -->ys<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->F<!-- ann END -->&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">#</span></a>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.map"><span class="name function">map</span></a>&ensp;<!-- ann ignored START -->ys<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.tail"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.tail"><span class="name function">tail</span></a>&ensp;:&ensp;(<!-- ann ignored START -->xs<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Data.List.Fresh.View.NonEmpty"><span class="name type">NonEmpty</span></span>&ensp;<!-- ann ignored START -->xs<!-- ann END -->&ensp;=&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.tailFreshness"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.tailFreshness"><span class="name function">tailFreshness</span></a>&ensp;:&ensp;(0&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;:&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;-&gt;&ensp;(<!-- ann ignored START -->ys<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->)&ensp;-&gt;&ensp;{<!-- ann ignored START -->auto<!-- ann END -->&ensp;<!-- ann ignored START -->isNonEmpty<!-- ann END -->&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.View.NonEmpty"><span class="name type">NonEmpty</span></span>&ensp;<!-- ann ignored START -->ys<!-- ann END -->}&ensp;-&gt;&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">#</span></a>&ensp;<!-- ann ignored START -->ys<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">#</span></a>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.tail"><span class="name function">tail</span></a>&ensp;<!-- ann ignored START -->ys<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.take"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.take"><span class="name function">take</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.takeFreshness"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.takeFreshness"><span class="name function">takeFreshness</span></a>&ensp;:&ensp;(<!-- ann ignored START -->n<!-- ann END -->&ensp;:&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>)&ensp;-&gt;&ensp;(<!-- ann ignored START -->xs<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->y<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">#</span></a>&ensp;<!-- ann ignored START -->xs<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->y<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">#</span></a>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.take"><span class="name function">take</span></a>&ensp;<!-- ann ignored START -->n<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.takeWhile"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.takeWhile"><span class="name function">takeWhile</span></a>&ensp;:&ensp;(<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span>)&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.takeWhileFreshness"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.takeWhileFreshness"><span class="name function">takeWhileFreshness</span></a>&ensp;:&ensp;(<!-- ann ignored START -->pred<!-- ann END -->&ensp;:&ensp;(<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span>))&ensp;-&gt;&ensp;(<!-- ann ignored START -->xs<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->y<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">#</span></a>&ensp;<!-- ann ignored START -->xs<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->y<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">#</span></a>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.takeWhile"><span class="name function">takeWhile</span></a>&ensp;<!-- ann ignored START -->pred<!-- ann END -->&ensp;<!-- ann ignored START -->xs<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.toFreshList1"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.toFreshList1"><span class="name function">toFreshList1</span></a>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;(<span class="type resolved" title="Data.List.Fresh.FreshList1.FreshList1"><span class="name type">FreshList1</span></span>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.List.Fresh.uncons"><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.uncons"><span class="name function">uncons</span></a>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;(<!-- ann ignored START -->a<!-- ann END -->,&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->neq<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total</dd></dl></div><footer>Produced by Idris 2 version 0.4.0-c86184575</footer></body></html>
\ No newline at end of file
+Based directly on Agda&apos;s fresh lists:
+http://agda.github.io/agda-stdlib/Data.List.Fresh.html
+</pre></div><h2>Reexports</h2><code><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Data.So</code><h2>Definitions</h2><dl class="decls"><dt id="Data.List.Fresh.BRel"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.BRel"><span class="name function">BRel</span></a>&ensp;:&ensp;<span class="name type">Type</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.(##)"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(##)"><span class="name function">(##)</span></a>&ensp;:&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Fixity Declaration</b>:&ensp;infix&ensp;operator,&ensp;level&ensp;4</dd><dt id="Data.List.Fresh.(#)"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">(#)</span></a>&ensp;:&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Fixity Declarations</b>:<br>  infix&ensp;operator,&ensp;level&ensp;4<br>infixr&ensp;operator,&ensp;level&ensp;5</dd><dt id="Data.List.Fresh.FreshList"><code><span class="keyword">data</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;:&ensp;(<span class="boundvar">a</span>&ensp;:&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.BRel"><span class="name function">BRel</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructors</b>:<br><dl class="decls">  <dt id="Data.List.Fresh.Nil"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.Nil"><span class="name constructor">Nil</span></a>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span></code></dt>  <dt id="Data.List.Fresh.(::)"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(::)"><span class="name constructor">(::)</span></a>&ensp;:&ensp;(<span class="boundvar">x</span>&ensp;:&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">xs</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">auto</span>&ensp;<span class="keyword">0</span>&ensp;<span class="boundvar">_</span>&ensp;:&ensp;<span class="boundvar">x</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<span class="boundvar">xs</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span></code></dt></dl></dd><dt id="Data.List.Fresh.FreshList1.FreshList1"><code><span class="keyword">data</span>&ensp;<span class="type resolved" title="Data.List.Fresh.FreshList1.FreshList1"><span class="name type">FreshList1</span></span>&ensp;:&ensp;(<span class="boundvar">a</span>&ensp;:&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.BRel"><span class="name function">BRel</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Data.List.Fresh.FreshList1.(::)"><code><span class="type resolved" title="Data.List.Fresh.FreshList1.(::)"><span class="name constructor">(::)</span></span>&ensp;:&ensp;(<span class="boundvar">x</span>&ensp;:&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">xs</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">auto</span>&ensp;<span class="keyword">0</span>&ensp;<span class="boundvar">_</span>&ensp;:&ensp;<span class="boundvar">x</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<span class="boundvar">xs</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.FreshList1.FreshList1"><span class="name type">FreshList1</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span></code></dt></dl></dd><dt id="Data.List.Fresh.map"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.map"><span class="name function">map</span></a>&ensp;:&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">A</span>&ensp;:&ensp;<span class="name type">Type</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">Aneq</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.BRel"><span class="name function">BRel</span></a>&ensp;<span class="boundvar">A</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">B</span>&ensp;:&ensp;<span class="name type">Type</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">Bneq</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.BRel"><span class="name function">BRel</span></a>&ensp;<span class="boundvar">B</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">F</span>&ensp;:&ensp;(<span class="boundvar">A</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">B</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;((<span class="boundvar">x</span>&ensp;:&ensp;<span class="boundvar">A</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">y</span>&ensp;:&ensp;<span class="boundvar">A</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.So.So"><span class="name type">So</span></span>&ensp;(<span class="boundvar">Aneq</span>&ensp;<span class="boundvar">x</span>&ensp;<span class="boundvar">y</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.So.So"><span class="name type">So</span></span>&ensp;(<span class="boundvar">Bneq</span>&ensp;(<span class="boundvar">F</span>&ensp;<span class="boundvar">x</span>)&ensp;(<span class="boundvar">F</span>&ensp;<span class="boundvar">y</span>)))&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">A</span>&ensp;<span class="boundvar">Aneq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">B</span>&ensp;<span class="boundvar">Bneq</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.mapFreshness"><code><span class="keyword">0</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.mapFreshness"><span class="name function">mapFreshness</span></a>&ensp;:&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">A</span>&ensp;:&ensp;<span class="name type">Type</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">Aneq</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.BRel"><span class="name function">BRel</span></a>&ensp;<span class="boundvar">A</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">B</span>&ensp;:&ensp;<span class="name type">Type</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">Bneq</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.BRel"><span class="name function">BRel</span></a>&ensp;<span class="boundvar">B</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">F</span>&ensp;:&ensp;(<span class="boundvar">A</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">B</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">Injectivity</span>&ensp;:&ensp;((<span class="boundvar">x</span>&ensp;:&ensp;<span class="boundvar">A</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">y</span>&ensp;:&ensp;<span class="boundvar">A</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.So.So"><span class="name type">So</span></span>&ensp;(<span class="boundvar">Aneq</span>&ensp;<span class="boundvar">x</span>&ensp;<span class="boundvar">y</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.So.So"><span class="name type">So</span></span>&ensp;(<span class="boundvar">Bneq</span>&ensp;(<span class="boundvar">F</span>&ensp;<span class="boundvar">x</span>)&ensp;(<span class="boundvar">F</span>&ensp;<span class="boundvar">y</span>))))&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">ys</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">A</span>&ensp;<span class="boundvar">Aneq</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">x</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<span class="boundvar">ys</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">F</span>&ensp;<span class="boundvar">x</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.map"><span class="name function">map</span></a>&ensp;<span class="boundvar">ys</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.View.Empty"><code><span class="keyword">data</span>&ensp;<span class="type resolved" title="Data.List.Fresh.View.Empty"><span class="name type">Empty</span></span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Data.List.Fresh.View.Nil"><code><span class="type resolved" title="Data.List.Fresh.View.Nil"><span class="name constructor">Nil</span></span>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.View.Empty"><span class="name type">Empty</span></span>&ensp;[]</code></dt></dl></dd><dt id="Data.List.Fresh.View.NonEmpty"><code><span class="keyword">data</span>&ensp;<span class="type resolved" title="Data.List.Fresh.View.NonEmpty"><span class="name type">NonEmpty</span></span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Data.List.Fresh.View.IsNonEmpty"><code><span class="type resolved" title="Data.List.Fresh.View.IsNonEmpty"><span class="name constructor">IsNonEmpty</span></span>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.View.NonEmpty"><span class="name type">NonEmpty</span></span>&ensp;(<span class="boundvar">x</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(::)"><span class="name constructor">::</span></a>&ensp;<span class="boundvar">xs</span>)</code></dt></dl></dd><dt id="Data.List.Fresh.length"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.length"><span class="name function">length</span></a>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.fromMaybe"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.fromMaybe"><span class="name function">fromMaybe</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.uncons"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.uncons"><span class="name function">uncons</span></a>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;(<span class="boundvar">a</span>,&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.toFreshList1"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.toFreshList1"><span class="name function">toFreshList1</span></a>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Types.Maybe"><span class="name type">Maybe</span></span>&ensp;(<span class="type resolved" title="Data.List.Fresh.FreshList1.FreshList1"><span class="name type">FreshList1</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.head"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.head"><span class="name function">head</span></a>&ensp;:&ensp;(<span class="boundvar">xs</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.View.NonEmpty"><span class="name type">NonEmpty</span></span>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">=&gt;</span>&ensp;<span class="boundvar">a</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.tail"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.tail"><span class="name function">tail</span></a>&ensp;:&ensp;(<span class="boundvar">xs</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.View.NonEmpty"><span class="name type">NonEmpty</span></span>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">=&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.(.freshness)"><code><span class="keyword">0</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(.freshness)"><span class="name function">.freshness</span></a>&ensp;:&ensp;(<span class="boundvar">xs</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">auto</span>&ensp;<span class="boundvar">isNonEmpty</span>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.View.NonEmpty"><span class="name type">NonEmpty</span></span>&ensp;<span class="boundvar">xs</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.head"><span class="name function">head</span></a>&ensp;<span class="boundvar">xs</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.tail"><span class="name function">tail</span></a>&ensp;<span class="boundvar">xs</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.headFreshness"><code><span class="keyword">0</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.headFreshness"><span class="name function">headFreshness</span></a>&ensp;:&ensp;(<span class="keyword">0</span>&ensp;<span class="boundvar">x</span>&ensp;:&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">ys</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">auto</span>&ensp;<span class="boundvar">isNonEmpty</span>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.View.NonEmpty"><span class="name type">NonEmpty</span></span>&ensp;<span class="boundvar">ys</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">x</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<span class="boundvar">ys</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.So.So"><span class="name type">So</span></span>&ensp;(<span class="boundvar">neq</span>&ensp;<span class="boundvar">x</span>&ensp;(<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.head"><span class="name function">head</span></a>&ensp;<span class="boundvar">ys</span>))</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.tailFreshness"><code><span class="keyword">0</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.tailFreshness"><span class="name function">tailFreshness</span></a>&ensp;:&ensp;(<span class="keyword">0</span>&ensp;<span class="boundvar">x</span>&ensp;:&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">ys</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">auto</span>&ensp;<span class="boundvar">isNonEmpty</span>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.View.NonEmpty"><span class="name type">NonEmpty</span></span>&ensp;<span class="boundvar">ys</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">x</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<span class="boundvar">ys</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">x</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.tail"><span class="name function">tail</span></a>&ensp;<span class="boundvar">ys</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.take"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.take"><span class="name function">take</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.takeFreshness"><code><span class="keyword">0</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.takeFreshness"><span class="name function">takeFreshness</span></a>&ensp;:&ensp;(<span class="boundvar">n</span>&ensp;:&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">xs</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">y</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">y</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.take"><span class="name function">take</span></a>&ensp;<span class="boundvar">n</span>&ensp;<span class="boundvar">xs</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.drop"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.drop"><span class="name function">drop</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Types.Nat"><span class="name type">Nat</span></span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.takeWhile"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.takeWhile"><span class="name function">takeWhile</span></a>&ensp;:&ensp;(<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.takeWhileFreshness"><code><span class="keyword">0</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.takeWhileFreshness"><span class="name function">takeWhileFreshness</span></a>&ensp;:&ensp;(<span class="boundvar">pred</span>&ensp;:&ensp;(<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span>))&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">xs</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">y</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">y</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.takeWhile"><span class="name function">takeWhile</span></a>&ensp;<span class="boundvar">pred</span>&ensp;<span class="boundvar">xs</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.dropWhile"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.dropWhile"><span class="name function">dropWhile</span></a>&ensp;:&ensp;(<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.dropWhileFreshness"><code><span class="keyword">0</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.dropWhileFreshness"><span class="name function">dropWhileFreshness</span></a>&ensp;:&ensp;(<span class="boundvar">pred</span>&ensp;:&ensp;(<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span>))&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">xs</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">y</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">y</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.dropWhile"><span class="name function">dropWhile</span></a>&ensp;<span class="boundvar">pred</span>&ensp;<span class="boundvar">xs</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.filter"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.filter"><span class="name function">filter</span></a>&ensp;:&ensp;(<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.filterFreshness"><code><span class="keyword">0</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.filterFreshness"><span class="name function">filterFreshness</span></a>&ensp;:&ensp;(<span class="boundvar">pred</span>&ensp;:&ensp;(<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Basics.Bool"><span class="name type">Bool</span></span>))&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">xs</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">y</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<span class="boundvar">xs</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">y</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.filter"><span class="name function">filter</span></a>&ensp;<span class="boundvar">pred</span>&ensp;<span class="boundvar">xs</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.decideFreshness"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.decideFreshness"><span class="name function">decideFreshness</span></a>&ensp;:&ensp;(<span class="boundvar">x</span>&ensp;:&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">ys</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Types.Dec"><span class="name type">Dec</span></span>&ensp;(<span class="boundvar">x</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<span class="boundvar">ys</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.foldl"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.foldl"><span class="name function">foldl</span></a>&ensp;:&ensp;(<span class="boundvar">b</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.foldr"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.foldr"><span class="name function">foldr</span></a>&ensp;:&ensp;(<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.String.(##)"><code><span class="type resolved" title="Data.List.Fresh.String.(##)"><span class="name function">(##)</span></span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.BRel"><span class="name function">BRel</span></a>&ensp;<span class="name type">String</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Fixity Declaration</b>:&ensp;infix&ensp;operator,&ensp;level&ensp;4</dd><dt id="Data.List.Fresh.Aux.FreshSnoc"><code><span class="type resolved" title="Data.List.Fresh.Aux.FreshSnoc"><span class="name function">FreshSnoc</span></span>&ensp;:&ensp;<span class="type resolved" title="Prelude.Basics.SnocList"><span class="name type">SnocList</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.castAux"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.castAux"><span class="name function">castAux</span></a>&ensp;:&ensp;(<span class="boundvar">sx</span>&ensp;:&ensp;<span class="type resolved" title="Prelude.Basics.SnocList"><span class="name type">SnocList</span></span>&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">xs</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">auto</span>&ensp;<span class="keyword">0</span>&ensp;<span class="boundvar">_</span>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Aux.FreshSnoc"><span class="name function">FreshSnoc</span></span>&ensp;<span class="boundvar">sx</span>&ensp;<span class="boundvar">xs</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.Fresh"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.Fresh"><span class="name function">Fresh</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Basics.SnocList"><span class="name type">SnocList</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.List.Fresh.cast"><code><a class="type" href="Data.List.Fresh.html#Data.List.Fresh.cast"><span class="name function">cast</span></a>&ensp;:&ensp;(<span class="boundvar">sx</span>&ensp;:&ensp;<span class="type resolved" title="Prelude.Basics.SnocList"><span class="name type">SnocList</span></span>&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">auto</span>&ensp;<span class="keyword">0</span>&ensp;<span class="boundvar">_</span>&ensp;:&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.Fresh"><span class="name function">Fresh</span></a>&ensp;<span class="boundvar">sx</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.FreshList"><span class="name type">FreshList</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">neq</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd></dl></div><footer>Produced by Idris 2 version 0.7.0</footer></body></html>
\ No newline at end of file
diff --git a/docs/Data.Magma.html b/docs/Data.Magma.html
index 26b8c56..bfd0c2e 100644
--- a/docs/Data.Magma.html
+++ b/docs/Data.Magma.html
@@ -1 +1,64 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>Data.Magma</title><link rel="stylesheet" href="../styles.css"></head><body class="namespace"><header><strong>Idris2Doc</strong> : Data.Magma<nav><a href="../index.html">Index</a></nav></header><div class="container"><div id="moduleHeader"><h1>Data.Magma</h1><p></p></div><dl class="decls"><dt id="Data.Magma.RawMagma"><!-- ann ignored START -->record<!-- ann END -->&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a>&ensp;:&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Data.Magma.MkRawMagma"><a class="type" href="Data.Magma.html#Data.Magma.MkRawMagma"><span class="name constructor">MkRawMagma</span></a>&ensp;:&ensp;(<!-- ann ignored START -->Carrier<!-- ann END -->&ensp;:&ensp;<span class="name type">Type</span>)&ensp;-&gt;&ensp;(<!-- ann ignored START -->Carrier<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->Carrier<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->Carrier<!-- ann END -->)&ensp;-&gt;&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a></dt></dl><br>  <b>Projections</b>:<br><dl class="decls">  <dt id="Data.Magma.RawMagma.(.Carrier)"><span class="type resolved" title="Data.Magma.RawMagma.(.Carrier)"><span class="name function">Carrier</span></span>&ensp;:&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a>&ensp;-&gt;&ensp;<span class="name type">Type</span></dt>  <dt id="Data.Magma.RawMagma.(.Product)"><span class="type resolved" title="Data.Magma.RawMagma.(.Product)"><span class="name function">Product</span></span>&ensp;:&ensp;(<!-- ann ignored START -->rec<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a>)&ensp;-&gt;&ensp;<span class="type resolved" title="Data.Magma.RawMagma.Carrier"><span class="name function">Carrier</span></span>&ensp;<!-- ann ignored START -->rec<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Data.Magma.RawMagma.Carrier"><span class="name function">Carrier</span></span>&ensp;<!-- ann ignored START -->rec<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Data.Magma.RawMagma.Carrier"><span class="name function">Carrier</span></span>&ensp;<!-- ann ignored START -->rec<!-- ann END --></dt></dl></dd><dt id="Data.Magma.openMagma"><a class="type" href="Data.Magma.html#Data.Magma.openMagma"><span class="name function">openMagma</span></a>&ensp;:&ensp;(<!-- ann ignored START -->magma<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a>)&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Interfaces.Semigroup"><span class="name type">Semigroup</span></span>&ensp;(<!-- ann ignored START -->magma<!-- ann END -->&ensp;<span class="type resolved" title="Data.Magma.RawMagma.(.Carrier)"><span class="name function">.Carrier</span></span>)</dt><dd>  <b>Totality</b>:&ensp;total</dd></dl></div><footer>Produced by Idris 2 version 0.4.0-c86184575</footer></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="en">
+
+<head>
+  <meta charset="utf-8">
+  <title>Data.Magma</title>
+  <link rel="stylesheet" type="text/css" id="preferredStyle" href="../default.css">
+  <script>
+    /* Updates the stylesheet to use the preferred one.
+       Note that we set the link to root ++ sourceLoc because the config
+       is shared across the whole website, so the root may differ from
+       page to page.
+    */
+    function setStyleSource (sourceLoc) {
+      document.getElementById("preferredStyle").href = "../" + sourceLoc + ".css";
+      document.getElementById("selectPreferredStyle").value = sourceLoc;
+    }
+    /* Initialises the preferred style sheet:
+       1. if there is a stored value then use that
+          otherwise select the default
+       2. set both the css link href & the drop down menu selected option
+    */
+    function initStyleSource () {
+      var preferredStyle = localStorage.getItem("stylefile");
+      if (preferredStyle !== null) {
+        setStyleSource(preferredStyle);
+      } else {
+        setStyleSource("default");
+      };
+    }
+    function saveStyleSource (preferredStyle) {
+      localStorage.stylefile = preferredStyle;
+    }
+    </script>
+</head>
+
+<body class="namespace">
+<header>
+  <strong>Idris2Doc</strong> : Data.Magma
+  <nav><a href="../index.html">Index</a>
+
+  <select id="selectPreferredStyle">
+    <option value="default">Default</option>
+<option value="alternative">Alternative</option>
+<option value="blackandwhite">Black & White</option>
+
+  </select>
+  </nav>
+
+  <script>
+  /* We start by initialising the style source */
+  initStyleSource();
+
+  /* This listens for changes on the drop down menu and updates the
+     css used for the current page when a selection is made.
+  */
+  document.getElementById("selectPreferredStyle").addEventListener("change", function(){
+    var selected = this.options[this.selectedIndex].value; /* the option chosen */
+    setStyleSource (selected);
+    saveStyleSource (selected);
+  });
+</script>
+
+</header>
+<div class="container"><div id="module-header"><h1>Data.Magma</h1><pre></pre></div><code></code><h2>Definitions</h2><dl class="decls"><dt id="Data.Magma.RawMagma"><code><span class="keyword">record</span>&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a>&ensp;:&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Data.Magma.MkRawMagma"><code><a class="type" href="Data.Magma.html#Data.Magma.MkRawMagma"><span class="name constructor">MkRawMagma</span></a>&ensp;:&ensp;(<span class="boundvar">Carrier</span>&ensp;:&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">Carrier</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">Carrier</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">Carrier</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a></code></dt></dl><br>  <b>Projections</b>:<br><dl class="decls">  <dt id="Data.Magma.RawMagma.(.Carrier)"><code><span class="type resolved" title="Data.Magma.RawMagma.(.Carrier)"><span class="name function">.Carrier</span></span>&ensp;:&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt>  <dt id="Data.Magma.RawMagma.(.Product)"><code><span class="type resolved" title="Data.Magma.RawMagma.(.Product)"><span class="name function">.Product</span></span>&ensp;:&ensp;(<span class="boundvar">{rec:0}</span>&ensp;:&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Magma.RawMagma.Carrier"><span class="name function">Carrier</span></span>&ensp;<span class="boundvar">{rec:0}</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Magma.RawMagma.Carrier"><span class="name function">Carrier</span></span>&ensp;<span class="boundvar">{rec:0}</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Magma.RawMagma.Carrier"><span class="name function">Carrier</span></span>&ensp;<span class="boundvar">{rec:0}</span></code></dt></dl></dd><dt id="Data.Magma.RawMagma.(.Carrier)"><code><span class="type resolved" title="Data.Magma.RawMagma.(.Carrier)"><span class="name function">.Carrier</span></span>&ensp;:&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Magma.RawMagma.Carrier"><code><span class="type resolved" title="Data.Magma.RawMagma.Carrier"><span class="name function">Carrier</span></span>&ensp;:&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Magma.RawMagma.(.Product)"><code><span class="type resolved" title="Data.Magma.RawMagma.(.Product)"><span class="name function">.Product</span></span>&ensp;:&ensp;(<span class="boundvar">{rec:0}</span>&ensp;:&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Magma.RawMagma.Carrier"><span class="name function">Carrier</span></span>&ensp;<span class="boundvar">{rec:0}</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Magma.RawMagma.Carrier"><span class="name function">Carrier</span></span>&ensp;<span class="boundvar">{rec:0}</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Magma.RawMagma.Carrier"><span class="name function">Carrier</span></span>&ensp;<span class="boundvar">{rec:0}</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Magma.RawMagma.Product"><code><span class="type resolved" title="Data.Magma.RawMagma.Product"><span class="name function">Product</span></span>&ensp;:&ensp;(<span class="boundvar">{rec:0}</span>&ensp;:&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Magma.RawMagma.Carrier"><span class="name function">Carrier</span></span>&ensp;<span class="boundvar">{rec:0}</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Magma.RawMagma.Carrier"><span class="name function">Carrier</span></span>&ensp;<span class="boundvar">{rec:0}</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Magma.RawMagma.Carrier"><span class="name function">Carrier</span></span>&ensp;<span class="boundvar">{rec:0}</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Magma.List.rawMagma"><code><span class="type resolved" title="Data.Magma.List.rawMagma"><span class="name function">rawMagma</span></span>&ensp;:&ensp;<span class="name type">Type</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Magma.String.rawMagma"><code><span class="type resolved" title="Data.Magma.String.rawMagma"><span class="name function">rawMagma</span></span>&ensp;:&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Magma.Unit.rawMagma"><code><span class="type resolved" title="Data.Magma.Unit.rawMagma"><span class="name function">rawMagma</span></span>&ensp;:&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Magma.Maybe.rawMagma"><code><span class="type resolved" title="Data.Magma.Maybe.rawMagma"><span class="name function">rawMagma</span></span>&ensp;:&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Magma.openMagma"><code><a class="type" href="Data.Magma.html#Data.Magma.openMagma"><span class="name function">openMagma</span></a>&ensp;:&ensp;(<span class="boundvar">magma</span>&ensp;:&ensp;<a class="type" href="Data.Magma.html#Data.Magma.RawMagma"><span class="name type">RawMagma</span></a>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Interfaces.Semigroup"><span class="name type">Semigroup</span></span>&ensp;(<span class="boundvar">magma</span>&ensp;<span class="type resolved" title="Data.Magma.RawMagma.(.Carrier)"><span class="name function">.Carrier</span></span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd></dl></div><footer>Produced by Idris 2 version 0.7.0</footer></body></html>
\ No newline at end of file
diff --git a/docs/Data.Record.SmartConstructors.html b/docs/Data.Record.SmartConstructors.html
index 095bc83..5228758 100644
--- a/docs/Data.Record.SmartConstructors.html
+++ b/docs/Data.Record.SmartConstructors.html
@@ -1,3 +1,67 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>Data.Record.SmartConstructors</title><link rel="stylesheet" href="../styles.css"></head><body class="namespace"><header><strong>Idris2Doc</strong> : Data.Record.SmartConstructors<nav><a href="../index.html">Index</a></nav></header><div class="container"><div id="moduleHeader"><h1>Data.Record.SmartConstructors</h1><p>Selectively ported from agdARGS's Data.Recrod.SmartConstructors
+<!DOCTYPE html><html lang="en">
 
-Please port more if you want!</p></div><dl class="decls"><dt id="Data.Record.SmartConstructors.BasicRecord"><a class="type" href="Data.Record.SmartConstructors.html#Data.Record.SmartConstructors.BasicRecord"><span class="name function">BasicRecord</span></a>&ensp;:&ensp;(<span class="name type">Type</span>&ensp;-&gt;&ensp;<span class="name type">Type</span>)&ensp;-&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;(<span class="type resolved" title="Prelude.Basics.const"><span class="name function">const</span></span>&ensp;<span class="name type">Type</span>)&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  A&ensp;record&ensp;where&ensp;the&ensp;notion&ensp;of&ensp;type&ensp;for&ensp;its&ensp;fields&ensp;is&ensp;`Type`&ensp;itself<br>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.SmartConstructors.mkBasicRecord"><a class="type" href="Data.Record.SmartConstructors.html#Data.Record.SmartConstructors.mkBasicRecord"><span class="name function">mkBasicRecord</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.SmartConstructors.html#Data.Record.SmartConstructors.BasicRecord"><span class="name function">BasicRecord</span></a>&ensp;<!-- ann ignored START -->f<!-- ann END -->&ensp;<!-- ann ignored START -->flds<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.Record.SmartConstructors.html#Data.Record.SmartConstructors.BasicRecord"><span class="name function">BasicRecord</span></a>&ensp;<!-- ann ignored START -->f<!-- ann END -->&ensp;<!-- ann ignored START -->flds<!-- ann END --></dt><dd>  This&ensp;acts&ensp;as&ensp;a&ensp;type&ensp;annotation&ensp;ensuring&ensp;the&ensp;list&ensp;passed&ensp;as&ensp;an<br>  argument&ensp;is&ensp;a&ensp;basic&ensp;record.<br>  <b>Totality</b>:&ensp;total</dd></dl></div><footer>Produced by Idris 2 version 0.4.0-c86184575</footer></body></html>
\ No newline at end of file
+<head>
+  <meta charset="utf-8">
+  <title>Data.Record.SmartConstructors</title>
+  <link rel="stylesheet" type="text/css" id="preferredStyle" href="../default.css">
+  <script>
+    /* Updates the stylesheet to use the preferred one.
+       Note that we set the link to root ++ sourceLoc because the config
+       is shared across the whole website, so the root may differ from
+       page to page.
+    */
+    function setStyleSource (sourceLoc) {
+      document.getElementById("preferredStyle").href = "../" + sourceLoc + ".css";
+      document.getElementById("selectPreferredStyle").value = sourceLoc;
+    }
+    /* Initialises the preferred style sheet:
+       1. if there is a stored value then use that
+          otherwise select the default
+       2. set both the css link href & the drop down menu selected option
+    */
+    function initStyleSource () {
+      var preferredStyle = localStorage.getItem("stylefile");
+      if (preferredStyle !== null) {
+        setStyleSource(preferredStyle);
+      } else {
+        setStyleSource("default");
+      };
+    }
+    function saveStyleSource (preferredStyle) {
+      localStorage.stylefile = preferredStyle;
+    }
+    </script>
+</head>
+
+<body class="namespace">
+<header>
+  <strong>Idris2Doc</strong> : Data.Record.SmartConstructors
+  <nav><a href="../index.html">Index</a>
+
+  <select id="selectPreferredStyle">
+    <option value="default">Default</option>
+<option value="alternative">Alternative</option>
+<option value="blackandwhite">Black & White</option>
+
+  </select>
+  </nav>
+
+  <script>
+  /* We start by initialising the style source */
+  initStyleSource();
+
+  /* This listens for changes on the drop down menu and updates the
+     css used for the current page when a selection is made.
+  */
+  document.getElementById("selectPreferredStyle").addEventListener("change", function(){
+    var selected = this.options[this.selectedIndex].value; /* the option chosen */
+    setStyleSource (selected);
+    saveStyleSource (selected);
+  });
+</script>
+
+</header>
+<div class="container"><div id="module-header"><h1>Data.Record.SmartConstructors</h1><pre>Selectively ported from agdARGS&apos;s Data.Recrod.SmartConstructors
+
+Please port more if you want!
+</pre></div><code></code><h2>Definitions</h2><dl class="decls"><dt id="Data.Record.SmartConstructors.Check.Checkable"><code><span class="keyword">record</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable"><span class="name type">Checkable</span></span>&ensp;:&ensp;(<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Data.Record.SmartConstructors.Check.MkCheckable"><code><span class="type resolved" title="Data.Record.SmartConstructors.Check.MkCheckable"><span class="name constructor">MkCheckable</span></span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable"><span class="name type">Checkable</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span></code></dt></dl><br>  <b>Projection</b>:&ensp;<dl class="decls"><dt id="Data.Record.SmartConstructors.Check.Checkable.(.mkCheckable)"><code><span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable.(.mkCheckable)"><span class="name function">.mkCheckable</span></span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable"><span class="name type">Checkable</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span></code></dt></dl></dd><dt id="Data.Record.SmartConstructors.Check.Checkable.(.mkCheckable)"><code><span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable.(.mkCheckable)"><span class="name function">.mkCheckable</span></span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable"><span class="name type">Checkable</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.Check.Checkable.mkCheckable"><code><span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable.mkCheckable"><span class="name function">mkCheckable</span></span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable"><span class="name type">Checkable</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.Check.Entry"><code><span class="keyword">record</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry"><span class="name type">Entry</span></span>&ensp;:&ensp;(<span class="boundvar">a</span>&ensp;:&ensp;(<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Data.Record.SmartConstructors.Check.(::=)"><code><span class="type resolved" title="Data.Record.SmartConstructors.Check.(::=)"><span class="name constructor">(::=)</span></span>&ensp;:&ensp;(<span class="boundvar">name</span>&ensp;:&ensp;<span class="name type">String</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">auto</span>&ensp;<span class="keyword">0</span>&ensp;<span class="boundvar">pos</span>&ensp;:&ensp;<span class="type resolved" title="Decidable.Decidable.IsYes"><span class="name type">IsYes</span></span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.isField"><span class="name function">isField</span></a>&ensp;<span class="boundvar">name</span>&ensp;<span class="boundvar">flds</span>)}&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">f</span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.field"><span class="name function">field</span></a>&ensp;(<a class="type" href="Decidable.Decidable.Extra1.html#Decidable.Decidable.Extra1.toWitness"><span class="name function">toWitness</span></a>&ensp;<span class="boundvar">pos</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span></code></dt></dl><br>  <b>Projections</b>:<br><dl class="decls">  <dt id="Data.Record.SmartConstructors.Check.Entry.(.name)"><code><span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry.(.name)"><span class="name function">.name</span></span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">String</span></code></dt>  <dt id="Data.Record.SmartConstructors.Check.Entry.(.pos)"><code><span class="keyword">0</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry.(.pos)"><span class="name function">.pos</span></span>&ensp;:&ensp;(<span class="boundvar">{rec:0}</span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Decidable.Decidable.IsYes"><span class="name type">IsYes</span></span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.isField"><span class="name function">isField</span></a>&ensp;(<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry.name"><span class="name function">name</span></span>&ensp;<span class="boundvar">{rec:0}</span>)&ensp;<span class="boundvar">flds</span>)</code></dt>  <dt id="Data.Record.SmartConstructors.Check.Entry.(.value)"><code><span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry.(.value)"><span class="name function">.value</span></span>&ensp;:&ensp;(<span class="boundvar">{rec:0}</span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">f</span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.field"><span class="name function">field</span></a>&ensp;(<a class="type" href="Decidable.Decidable.Extra1.html#Decidable.Decidable.Extra1.toWitness"><span class="name function">toWitness</span></a>&ensp;(<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry.pos"><span class="name function">pos</span></span>&ensp;<span class="boundvar">{rec:0}</span>)))</code></dt></dl></dd><dt id="Data.Record.SmartConstructors.Check.Entry.(.name)"><code><span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry.(.name)"><span class="name function">.name</span></span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">String</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.Check.Entry.name"><code><span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry.name"><span class="name function">name</span></span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">String</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.Check.Entry.(.pos)"><code><span class="keyword">0</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry.(.pos)"><span class="name function">.pos</span></span>&ensp;:&ensp;(<span class="boundvar">{rec:0}</span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Decidable.Decidable.IsYes"><span class="name type">IsYes</span></span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.isField"><span class="name function">isField</span></a>&ensp;(<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry.name"><span class="name function">name</span></span>&ensp;<span class="boundvar">{rec:0}</span>)&ensp;<span class="boundvar">flds</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.Check.Entry.pos"><code><span class="keyword">0</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry.pos"><span class="name function">pos</span></span>&ensp;:&ensp;(<span class="boundvar">{rec:0}</span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Decidable.Decidable.IsYes"><span class="name type">IsYes</span></span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.isField"><span class="name function">isField</span></a>&ensp;(<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry.name"><span class="name function">name</span></span>&ensp;<span class="boundvar">{rec:0}</span>)&ensp;<span class="boundvar">flds</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.Check.Entry.(.value)"><code><span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry.(.value)"><span class="name function">.value</span></span>&ensp;:&ensp;(<span class="boundvar">{rec:0}</span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">f</span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.field"><span class="name function">field</span></a>&ensp;(<a class="type" href="Decidable.Decidable.Extra1.html#Decidable.Decidable.Extra1.toWitness"><span class="name function">toWitness</span></a>&ensp;(<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry.pos"><span class="name function">pos</span></span>&ensp;<span class="boundvar">{rec:0}</span>)))</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.Check.Entry.value"><code><span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry.value"><span class="name function">value</span></span>&ensp;:&ensp;(<span class="boundvar">{rec:0}</span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">f</span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.field"><span class="name function">field</span></a>&ensp;(<a class="type" href="Decidable.Decidable.Extra1.html#Decidable.Decidable.Extra1.toWitness"><span class="name function">toWitness</span></a>&ensp;(<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry.pos"><span class="name function">pos</span></span>&ensp;<span class="boundvar">{rec:0}</span>)))</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.Check.Nil"><code><span class="type resolved" title="Data.Record.SmartConstructors.Check.Nil"><span class="name function">Nil</span></span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable"><span class="name type">Checkable</span></span>&ensp;<span class="boundvar">f</span>&ensp;[]</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.Check.(::)"><code><span class="type resolved" title="Data.Record.SmartConstructors.Check.(::)"><span class="name function">(::)</span></span>&ensp;:&ensp;(<span class="boundvar">entry</span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable"><span class="name type">Checkable</span></span>&ensp;<span class="boundvar">f</span>&ensp;(<a class="type" href="Data.List.Fresh.Quantifiers.html#Data.List.Fresh.Quantifiers.remove"><span class="name function">remove</span></a>&ensp;(<a class="type" href="Decidable.Decidable.Extra1.html#Decidable.Decidable.Extra1.toWitness"><span class="name function">toWitness</span></a>&ensp;(<span class="boundvar">entry</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Entry.(.pos)"><span class="name function">.pos</span></span>)))&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Check.Checkable"><span class="name type">Checkable</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Fixity Declaration</b>:&ensp;infixr&ensp;operator,&ensp;level&ensp;7</dd><dt id="Data.Record.SmartConstructors.Infer.Inferrable"><code><span class="keyword">record</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Inferrable"><span class="name type">Inferrable</span></span>&ensp;:&ensp;(<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Data.Record.SmartConstructors.Infer.MkInferrable"><code><span class="type resolved" title="Data.Record.SmartConstructors.Infer.MkInferrable"><span class="name constructor">MkInferrable</span></span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Inferrable"><span class="name type">Inferrable</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span></code></dt></dl><br>  <b>Projection</b>:&ensp;<dl class="decls"><dt id="Data.Record.SmartConstructors.Infer.Inferrable.(.mkInferrable)"><code><span class="type resolved" title="Data.Record.SmartConstructors.Infer.Inferrable.(.mkInferrable)"><span class="name function">.mkInferrable</span></span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Inferrable"><span class="name type">Inferrable</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span></code></dt></dl></dd><dt id="Data.Record.SmartConstructors.Infer.Inferrable.(.mkInferrable)"><code><span class="type resolved" title="Data.Record.SmartConstructors.Infer.Inferrable.(.mkInferrable)"><span class="name function">.mkInferrable</span></span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Inferrable"><span class="name type">Inferrable</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.Infer.Inferrable.mkInferrable"><code><span class="type resolved" title="Data.Record.SmartConstructors.Infer.Inferrable.mkInferrable"><span class="name function">mkInferrable</span></span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Inferrable"><span class="name type">Inferrable</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.Infer.Entry"><code><span class="keyword">record</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry"><span class="name type">Entry</span></span>&ensp;:&ensp;(<span class="boundvar">a</span>&ensp;:&ensp;(<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Data.Record.SmartConstructors.Infer.(::=)"><code><span class="type resolved" title="Data.Record.SmartConstructors.Infer.(::=)"><span class="name constructor">(::=)</span></span>&ensp;:&ensp;(<span class="boundvar">name</span>&ensp;:&ensp;<span class="name type">String</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">f</span>&ensp;(<span class="boundvar">name</span>&ensp;<span class="keyword">**</span>&ensp;<span class="boundvar">type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span></code></dt></dl><br>  <b>Projections</b>:<br><dl class="decls">  <dt id="Data.Record.SmartConstructors.Infer.Entry.(.name)"><code><span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.(.name)"><span class="name function">.name</span></span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">String</span></code></dt>  <dt id="Data.Record.SmartConstructors.Infer.Entry.(.type)"><code><span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.(.type)"><span class="name function">.type</span></span>&ensp;:&ensp;(<span class="boundvar">{rec:0}</span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span>&ensp;(<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.name"><span class="name function">name</span></span>&ensp;<span class="boundvar">{rec:0}</span>)</code></dt>  <dt id="Data.Record.SmartConstructors.Infer.Entry.(.value)"><code><span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.(.value)"><span class="name function">.value</span></span>&ensp;:&ensp;(<span class="boundvar">{rec:0}</span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">f</span>&ensp;(<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.name"><span class="name function">name</span></span>&ensp;<span class="boundvar">{rec:0}</span>&ensp;<span class="keyword">**</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.type"><span class="name function">type</span></span>&ensp;<span class="boundvar">{rec:0}</span>)</code></dt></dl></dd><dt id="Data.Record.SmartConstructors.Infer.Entry.(.name)"><code><span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.(.name)"><span class="name function">.name</span></span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">String</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.Infer.Entry.name"><code><span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.name"><span class="name function">name</span></span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">String</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.Infer.Entry.(.type)"><code><span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.(.type)"><span class="name function">.type</span></span>&ensp;:&ensp;(<span class="boundvar">{rec:0}</span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span>&ensp;(<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.name"><span class="name function">name</span></span>&ensp;<span class="boundvar">{rec:0}</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.Infer.Entry.type"><code><span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.type"><span class="name function">type</span></span>&ensp;:&ensp;(<span class="boundvar">{rec:0}</span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span>&ensp;(<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.name"><span class="name function">name</span></span>&ensp;<span class="boundvar">{rec:0}</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.Infer.Entry.(.value)"><code><span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.(.value)"><span class="name function">.value</span></span>&ensp;:&ensp;(<span class="boundvar">{rec:0}</span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">f</span>&ensp;(<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.name"><span class="name function">name</span></span>&ensp;<span class="boundvar">{rec:0}</span>&ensp;<span class="keyword">**</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.type"><span class="name function">type</span></span>&ensp;<span class="boundvar">{rec:0}</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.Infer.Entry.value"><code><span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.value"><span class="name function">value</span></span>&ensp;:&ensp;(<span class="boundvar">{rec:0}</span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">f</span>&ensp;(<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.name"><span class="name function">name</span></span>&ensp;<span class="boundvar">{rec:0}</span>&ensp;<span class="keyword">**</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.type"><span class="name function">type</span></span>&ensp;<span class="boundvar">{rec:0}</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.Infer.Nil"><code><span class="type resolved" title="Data.Record.SmartConstructors.Infer.Nil"><span class="name function">Nil</span></span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Inferrable"><span class="name type">Inferrable</span></span>&ensp;<span class="boundvar">f</span>&ensp;[]</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.Infer.(::)"><code><span class="type resolved" title="Data.Record.SmartConstructors.Infer.(::)"><span class="name function">(::)</span></span>&ensp;:&ensp;(<span class="boundvar">entry</span>&ensp;:&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry"><span class="name type">Entry</span></span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">f</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Inferrable"><span class="name type">Inferrable</span></span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">auto</span>&ensp;<span class="keyword">0</span>&ensp;<span class="boundvar">fresh</span>&ensp;:&ensp;(<span class="boundvar">entry</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.(.name)"><span class="name function">.name</span></span>&ensp;<span class="keyword">**</span>&ensp;<span class="boundvar">entry</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.(.type)"><span class="name function">.type</span></span>)&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<span class="boundvar">flds</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Inferrable"><span class="name type">Inferrable</span></span>&ensp;<span class="boundvar">f</span>&ensp;((<span class="boundvar">entry</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.(.name)"><span class="name function">.name</span></span>&ensp;<span class="keyword">**</span>&ensp;<span class="boundvar">entry</span>&ensp;<span class="type resolved" title="Data.Record.SmartConstructors.Infer.Entry.(.type)"><span class="name function">.type</span></span>)&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(::)"><span class="name constructor">::</span></a>&ensp;<span class="boundvar">flds</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Fixity Declaration</b>:&ensp;infixr&ensp;operator,&ensp;level&ensp;7</dd><dt id="Data.Record.SmartConstructors.BasicRecord"><code><a class="type" href="Data.Record.SmartConstructors.html#Data.Record.SmartConstructors.BasicRecord"><span class="name function">BasicRecord</span></a>&ensp;:&ensp;(<span class="name type">Type</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;(<span class="type resolved" title="Prelude.Basics.const"><span class="name function">const</span></span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd><pre>  A record where the notion of type for its fields is `Type` itself</pre><br>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.SmartConstructors.mkBasicRecord"><code><a class="type" href="Data.Record.SmartConstructors.html#Data.Record.SmartConstructors.mkBasicRecord"><span class="name function">mkBasicRecord</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.SmartConstructors.html#Data.Record.SmartConstructors.BasicRecord"><span class="name function">BasicRecord</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.SmartConstructors.html#Data.Record.SmartConstructors.BasicRecord"><span class="name function">BasicRecord</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span></code></dt><dd><pre>  This acts as a type annotation ensuring the list passed as an<br>  argument is a basic record.</pre><br>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd></dl></div><footer>Produced by Idris 2 version 0.7.0</footer></body></html>
\ No newline at end of file
diff --git a/docs/Data.Record.html b/docs/Data.Record.html
index 252710b..e118350 100644
--- a/docs/Data.Record.html
+++ b/docs/Data.Record.html
@@ -1,3 +1,66 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>Data.Record</title><link rel="stylesheet" href="../styles.css"></head><body class="namespace"><header><strong>Idris2Doc</strong> : Data.Record<nav><a href="../index.html">Index</a></nav></header><div class="container"><div id="moduleHeader"><h1>Data.Record</h1><p>An ordered record is a record whose field names have to appear in
-a fixed order, but must otherwise be distinct.An ordered record is a record whose field names have to appear in
-a fixed order, but must otherwise be distinct.</p></div><dl class="decls"><dt id="Data.Record.ArgList"><a class="type" href="Data.Record.html#Data.Record.ArgList"><span class="name function">ArgList</span></a>&ensp;:&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.Field"><a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;:&ensp;(<span class="name type">String</span>&ensp;-&gt;&ensp;<span class="name type">Type</span>)&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.Fields"><a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;:&ensp;(<span class="name type">String</span>&ensp;-&gt;&ensp;<span class="name type">Type</span>)&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.IsField"><a class="type" href="Data.Record.html#Data.Record.IsField"><span class="name function">IsField</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.IsFieldIrrelevant"><a class="type" href="Data.Record.html#Data.Record.IsFieldIrrelevant"><span class="name function">IsFieldIrrelevant</span></a>&ensp;:&ensp;(<!-- ann ignored START -->p<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.IsField"><span class="name function">IsField</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;<!-- ann ignored START -->flds<!-- ann END -->)&ensp;-&gt;&ensp;(<!-- ann ignored START -->q<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.IsField"><span class="name function">IsField</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;<!-- ann ignored START -->flds<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;=&ensp;<!-- ann ignored START -->q<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.IsFieldStale"><a class="type" href="Data.Record.html#Data.Record.IsFieldStale"><span class="name function">IsFieldStale</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.IsField"><span class="name function">IsField</span></a>&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;<!-- ann ignored START -->flds<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Builtin.DPair.DPair.fst"><span class="name function">fst</span></span>&ensp;<!-- ann ignored START -->nmv<!-- ann END -->&ensp;=&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;-&gt;&ensp;(0&ensp;<!-- ann ignored START -->_<!-- ann END -->&ensp;:&ensp;<!-- ann ignored START -->nmv<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">#</span></a>&ensp;<!-- ann ignored START -->flds<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Builtin.Void"><span class="name type">Void</span></span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.PartialRecord"><a class="type" href="Data.Record.html#Data.Record.PartialRecord"><span class="name function">PartialRecord</span></a>&ensp;:&ensp;(<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span>)&ensp;-&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.Record"><!-- ann ignored START -->record<!-- ann END -->&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;:&ensp;{0&ensp;<!-- ann ignored START -->A<!-- ann END -->&ensp;:&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<span class="name type">Type</span>}&ensp;-&gt;&ensp;(0&ensp;<!-- ann ignored START -->_<!-- ann END -->&ensp;:&ensp;(<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<!-- ann ignored START -->A<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span>))&ensp;-&gt;&ensp;(0&ensp;<!-- ann ignored START -->_<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<!-- ann ignored START -->A<!-- ann END -->)&ensp;-&gt;&ensp;<span class="name type">Type</span></dt><dd>  <b>Totality</b>:&ensp;total<br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Data.Record.MkRecord"><a class="type" href="Data.Record.html#Data.Record.MkRecord"><span class="name constructor">MkRecord</span></a>&ensp;:&ensp;{0&ensp;<!-- ann ignored START -->A<!-- ann END -->&ensp;:&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<span class="name type">Type</span>}&ensp;-&gt;&ensp;{0&ensp;<!-- ann ignored START -->F<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<!-- ann ignored START -->A<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span>}&ensp;-&gt;&ensp;{0&ensp;<!-- ann ignored START -->Flds<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<!-- ann ignored START -->A<!-- ann END -->}&ensp;-&gt;&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<!-- ann ignored START -->F<!-- ann END -->&ensp;<!-- ann ignored START -->Flds<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<!-- ann ignored START -->F<!-- ann END -->&ensp;<!-- ann ignored START -->Flds<!-- ann END --></dt></dl><br>  <b>Projection</b>:&ensp;<dl class="decls"><dt id="Data.Record.Record.(.content)"><span class="type resolved" title="Data.Record.Record.(.content)"><span class="name function">content</span></span>&ensp;:&ensp;{0&ensp;<!-- ann ignored START -->A<!-- ann END -->&ensp;:&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<span class="name type">Type</span>}&ensp;-&gt;&ensp;{0&ensp;<!-- ann ignored START -->F<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<!-- ann ignored START -->A<!-- ann END -->&ensp;-&gt;&ensp;<span class="name type">Type</span>}&ensp;-&gt;&ensp;{0&ensp;<!-- ann ignored START -->Flds<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<!-- ann ignored START -->A<!-- ann END -->}&ensp;-&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<!-- ann ignored START -->F<!-- ann END -->&ensp;<!-- ann ignored START -->Flds<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<!-- ann ignored START -->F<!-- ann END -->&ensp;<!-- ann ignored START -->Flds<!-- ann END --></dt></dl></dd><dt id="Data.Record.TypeFields"><a class="type" href="Data.Record.html#Data.Record.TypeFields"><span class="name function">TypeFields</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;(<span class="type resolved" title="Prelude.Basics.const"><span class="name function">const</span></span>&ensp;<span class="name type">Type</span>)&ensp;<!-- ann ignored START -->flds<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;(<span class="type resolved" title="Prelude.Basics.const"><span class="name function">const</span></span>&ensp;<span class="name type">Type</span>)</dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.field"><a class="type" href="Data.Record.html#Data.Record.field"><span class="name function">field</span></a>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;<!-- ann ignored START -->flds<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.foldl"><a class="type" href="Data.Record.html#Data.Record.foldl"><span class="name function">foldl</span></a>&ensp;:&ensp;(<!-- ann ignored START -->b<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->b<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->b<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;(<span class="type resolved" title="Prelude.Basics.const"><span class="name function">const</span></span>&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;<!-- ann ignored START -->flds<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->b<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.isField"><a class="type" href="Data.Record.html#Data.Record.isField"><span class="name function">isField</span></a>&ensp;:&ensp;(<!-- ann ignored START -->fldName<!-- ann END -->&ensp;:&ensp;<span class="name type">String</span>)&ensp;-&gt;&ensp;(<!-- ann ignored START -->flds<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;-&gt;&ensp;<span class="type resolved" title="Prelude.Types.Dec"><span class="name type">Dec</span></span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.IsField"><span class="name function">IsField</span></a>&ensp;<!-- ann ignored START -->fldName<!-- ann END -->&ensp;<!-- ann ignored START -->flds<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.isYesBecause"><a class="type" href="Data.Record.html#Data.Record.isYesBecause"><span class="name function">isYesBecause</span></a>&ensp;:&ensp;(<!-- ann ignored START -->d<!-- ann END -->&ensp;:&ensp;<span class="type resolved" title="Prelude.Types.Dec"><span class="name type">Dec</span></span>&ensp;<!-- ann ignored START -->p<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->p<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Decidable.Decidable.IsYes"><span class="name type">IsYes</span></span>&ensp;<!-- ann ignored START -->d<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.map"><a class="type" href="Data.Record.html#Data.Record.map"><span class="name function">map</span></a>&ensp;:&ensp;((<!-- ann ignored START -->nm<!-- ann END -->&ensp;:&ensp;<span class="name type">String</span>)&ensp;-&gt;&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->nm<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->b<!-- ann END -->&ensp;<!-- ann ignored START -->nm<!-- ann END -->)&ensp;-&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;-&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<!-- ann ignored START -->b<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.sequence"><a class="type" href="Data.Record.html#Data.Record.sequence"><span class="name function">sequence</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Interfaces.Applicative"><span class="name type">Applicative</span></span>&ensp;<!-- ann ignored START -->g<!-- ann END -->&ensp;=&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;(<!-- ann ignored START -->g<!-- ann END -->&ensp;<span class="type resolved" title="Prelude.Basics.."><span class="name function">.</span></span>&ensp;<!-- ann ignored START -->f<!-- ann END -->)&ensp;<!-- ann ignored START -->flds<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->g<!-- ann END -->&ensp;(<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<!-- ann ignored START -->f<!-- ann END -->&ensp;<!-- ann ignored START -->flds<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.soNotToEq"><a class="type" href="Data.Record.html#Data.Record.soNotToEq"><span class="name function">soNotToEq</span></a>&ensp;:&ensp;<span class="type resolved" title="Data.So.So"><span class="name type">So</span></span>&ensp;(<span class="type resolved" title="Prelude.Basics.not"><span class="name function">not</span></span>&ensp;<!-- ann ignored START -->b<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->b<!-- ann END -->&ensp;=&ensp;<span class="type resolved" title="Prelude.Basics.False"><span class="name constructor">False</span></span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.stringEq"><a class="type" href="Data.Record.html#Data.Record.stringEq"><span class="name function">stringEq</span></a>&ensp;:&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;=&ensp;<!-- ann ignored START -->y<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;<span class="type resolved" title="Prelude.EqOrd.=="><span class="name function">==</span></span>&ensp;<!-- ann ignored START -->y<!-- ann END -->&ensp;=&ensp;<span class="type resolved" title="Prelude.Basics.True"><span class="name constructor">True</span></span></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.tabulate"><a class="type" href="Data.Record.html#Data.Record.tabulate"><span class="name function">tabulate</span></a>&ensp;:&ensp;(<!-- ann ignored START -->args<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.ArgList"><span class="name function">ArgList</span></a>)&ensp;-&gt;&ensp;((<!-- ann ignored START -->arg<!-- ann END -->&ensp;:&ensp;<span class="name type">String</span>)&ensp;-&gt;&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;(\<!-- ann ignored START -->{arg:0}<!-- ann END -->&ensp;=&gt;&ensp;<!-- ann ignored START -->arg<!-- ann END -->&ensp;=&ensp;<!-- ann ignored START -->arg<!-- ann END -->)&ensp;<!-- ann ignored START -->args<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->arg<!-- ann END -->)&ensp;-&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.tabulateFreshness"><a class="type" href="Data.Record.html#Data.Record.tabulateFreshness"><span class="name function">tabulateFreshness</span></a>&ensp;:&ensp;{0&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;:&ensp;<span class="name type">String</span>&ensp;-&gt;&ensp;<span class="name type">Type</span>}&ensp;-&gt;&ensp;(<!-- ann ignored START -->args<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.ArgList"><span class="name function">ArgList</span></a>)&ensp;-&gt;&ensp;(<!-- ann ignored START -->f<!-- ann END -->&ensp;:&ensp;((<!-- ann ignored START -->arg<!-- ann END -->&ensp;:&ensp;<span class="name type">String</span>)&ensp;-&gt;&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;(\<!-- ann ignored START -->{arg:0}<!-- ann END -->&ensp;=&gt;&ensp;<!-- ann ignored START -->arg<!-- ann END -->&ensp;=&ensp;<!-- ann ignored START -->arg<!-- ann END -->)&ensp;<!-- ann ignored START -->args<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->a<!-- ann END -->&ensp;<!-- ann ignored START -->arg<!-- ann END -->))&ensp;-&gt;&ensp;<!-- ann ignored START -->y<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">#</span></a>&ensp;<!-- ann ignored START -->args<!-- ann END -->&ensp;-&gt;&ensp;<span class="type resolved" title="Builtin.DPair.MkDPair"><span class="name constructor">MkDPair</span></span>&ensp;<!-- ann ignored START -->y<!-- ann END -->&ensp;<!-- ann ignored START -->u<!-- ann END -->&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.#"><span class="name function">#</span></a>&ensp;<a class="type" href="Data.Record.html#Data.Record.tabulate"><span class="name function">tabulate</span></a>&ensp;<!-- ann ignored START -->args<!-- ann END -->&ensp;<!-- ann ignored START -->f<!-- ann END --></dt><dd>  <b>Totality</b>:&ensp;total</dd><dt id="Data.Record.traverse"><a class="type" href="Data.Record.html#Data.Record.traverse"><span class="name function">traverse</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Interfaces.Applicative"><span class="name type">Applicative</span></span>&ensp;<!-- ann ignored START -->m<!-- ann END -->&ensp;=&gt;&ensp;((<!-- ann ignored START -->x<!-- ann END -->&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<!-- ann ignored START -->a<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->f<!-- ann END -->&ensp;<!-- ann ignored START -->x<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->m<!-- ann END -->&ensp;(<!-- ann ignored START -->g<!-- ann END -->&ensp;<!-- ann ignored START -->x<!-- ann END -->))&ensp;-&gt;&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<!-- ann ignored START -->f<!-- ann END -->&ensp;<!-- ann ignored START -->flds<!-- ann END -->&ensp;-&gt;&ensp;<!-- ann ignored START -->m<!-- ann END -->&ensp;(<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<!-- ann ignored START -->g<!-- ann END -->&ensp;<!-- ann ignored START -->flds<!-- ann END -->)</dt><dd>  <b>Totality</b>:&ensp;total</dd></dl></div><footer>Produced by Idris 2 version 0.4.0-c86184575</footer></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="en">
+
+<head>
+  <meta charset="utf-8">
+  <title>Data.Record</title>
+  <link rel="stylesheet" type="text/css" id="preferredStyle" href="../default.css">
+  <script>
+    /* Updates the stylesheet to use the preferred one.
+       Note that we set the link to root ++ sourceLoc because the config
+       is shared across the whole website, so the root may differ from
+       page to page.
+    */
+    function setStyleSource (sourceLoc) {
+      document.getElementById("preferredStyle").href = "../" + sourceLoc + ".css";
+      document.getElementById("selectPreferredStyle").value = sourceLoc;
+    }
+    /* Initialises the preferred style sheet:
+       1. if there is a stored value then use that
+          otherwise select the default
+       2. set both the css link href & the drop down menu selected option
+    */
+    function initStyleSource () {
+      var preferredStyle = localStorage.getItem("stylefile");
+      if (preferredStyle !== null) {
+        setStyleSource(preferredStyle);
+      } else {
+        setStyleSource("default");
+      };
+    }
+    function saveStyleSource (preferredStyle) {
+      localStorage.stylefile = preferredStyle;
+    }
+    </script>
+</head>
+
+<body class="namespace">
+<header>
+  <strong>Idris2Doc</strong> : Data.Record
+  <nav><a href="../index.html">Index</a>
+
+  <select id="selectPreferredStyle">
+    <option value="default">Default</option>
+<option value="alternative">Alternative</option>
+<option value="blackandwhite">Black & White</option>
+
+  </select>
+  </nav>
+
+  <script>
+  /* We start by initialising the style source */
+  initStyleSource();
+
+  /* This listens for changes on the drop down menu and updates the
+     css used for the current page when a selection is made.
+  */
+  document.getElementById("selectPreferredStyle").addEventListener("change", function(){
+    var selected = this.options[this.selectedIndex].value; /* the option chosen */
+    setStyleSource (selected);
+    saveStyleSource (selected);
+  });
+</script>
+
+</header>
+<div class="container"><div id="module-header"><h1>Data.Record</h1><pre>An ordered record is a record whose field names have to appear in
+a fixed order, but must otherwise be distinct.
+</pre></div><h2>Reexports</h2><code><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Data.List.Fresh<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Data.List.Fresh.Quantifiers<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Decidable.Decidable.Extra1<br><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Decidable.Equality</code><h2>Definitions</h2><dl class="decls"><dt id="Data.Record.ArgList"><code><a class="type" href="Data.Record.html#Data.Record.ArgList"><span class="name function">ArgList</span></a>&ensp;:&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.Field"><code><a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;:&ensp;(<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.Fields"><code><a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;:&ensp;(<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.Record"><code><span class="keyword">record</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;:&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">A</span>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="keyword">0</span>&ensp;<span class="boundvar">_</span>&ensp;:&ensp;(<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<span class="boundvar">A</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="keyword">0</span>&ensp;<span class="boundvar">_</span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<span class="boundvar">A</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span><br>  <b>Constructor</b>:&ensp;<dl class="decls"><dt id="Data.Record.MkRecord"><code><a class="type" href="Data.Record.html#Data.Record.MkRecord"><span class="name constructor">MkRecord</span></a>&ensp;:&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">A</span>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">F</span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<span class="boundvar">A</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">Flds</span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<span class="boundvar">A</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">F</span>&ensp;<span class="boundvar">Flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="boundvar">F</span>&ensp;<span class="boundvar">Flds</span></code></dt></dl><br>  <b>Projection</b>:&ensp;<dl class="decls"><dt id="Data.Record.Record.(.content)"><code><span class="type resolved" title="Data.Record.Record.(.content)"><span class="name function">.content</span></span>&ensp;:&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">A</span>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">F</span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<span class="boundvar">A</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">Flds</span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<span class="boundvar">A</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="boundvar">F</span>&ensp;<span class="boundvar">Flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">F</span>&ensp;<span class="boundvar">Flds</span></code></dt></dl></dd><dt id="Data.Record.Record.(.content)"><code><span class="type resolved" title="Data.Record.Record.(.content)"><span class="name function">.content</span></span>&ensp;:&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">A</span>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">F</span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<span class="boundvar">A</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">Flds</span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<span class="boundvar">A</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="boundvar">F</span>&ensp;<span class="boundvar">Flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">F</span>&ensp;<span class="boundvar">Flds</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.Record.content"><code><span class="type resolved" title="Data.Record.Record.content"><span class="name function">content</span></span>&ensp;:&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">A</span>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">F</span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<span class="boundvar">A</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">Flds</span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<span class="boundvar">A</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="boundvar">F</span>&ensp;<span class="boundvar">Flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.All.All"><span class="name type">All</span></span>&ensp;<span class="boundvar">F</span>&ensp;<span class="boundvar">Flds</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.Record.map"><code><span class="type resolved" title="Data.Record.Record.map"><span class="name function">map</span></span>&ensp;:&ensp;((<span class="boundvar">x</span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">x</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">g</span>&ensp;<span class="boundvar">x</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="boundvar">g</span>&ensp;<span class="boundvar">flds</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.IsField"><code><a class="type" href="Data.Record.html#Data.Record.IsField"><span class="name function">IsField</span></a>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.isYesBecause"><code><a class="type" href="Data.Record.html#Data.Record.isYesBecause"><span class="name function">isYesBecause</span></a>&ensp;:&ensp;(<span class="boundvar">d</span>&ensp;:&ensp;<span class="type resolved" title="Prelude.Types.Dec"><span class="name type">Dec</span></span>&ensp;<span class="boundvar">p</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">p</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Decidable.Decidable.IsYes"><span class="name type">IsYes</span></span>&ensp;<span class="boundvar">d</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.soNotToEq"><code><a class="type" href="Data.Record.html#Data.Record.soNotToEq"><span class="name function">soNotToEq</span></a>&ensp;:&ensp;<span class="type resolved" title="Data.So.So"><span class="name type">So</span></span>&ensp;(<span class="type resolved" title="Prelude.Basics.not"><span class="name function">not</span></span>&ensp;<span class="boundvar">b</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span>&ensp;<span class="keyword">=</span>&ensp;<span class="type resolved" title="Prelude.Basics.False"><span class="name constructor">False</span></span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.stringEq"><code><a class="type" href="Data.Record.html#Data.Record.stringEq"><span class="name function">stringEq</span></a>&ensp;:&ensp;<span class="boundvar">x</span>&ensp;<span class="keyword">=</span>&ensp;<span class="boundvar">y</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">x</span>&ensp;<span class="type resolved" title="Prelude.EqOrd.(==)"><span class="name function">==</span></span>&ensp;<span class="boundvar">y</span>&ensp;<span class="keyword">=</span>&ensp;<span class="type resolved" title="Prelude.Basics.True"><span class="name constructor">True</span></span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.IsFieldStale"><code><a class="type" href="Data.Record.html#Data.Record.IsFieldStale"><span class="name function">IsFieldStale</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.IsField"><span class="name function">IsField</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Builtin.DPair.DPair.fst"><span class="name function">fst</span></span>&ensp;<span class="boundvar">nmv</span>&ensp;<span class="keyword">=</span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="keyword">0</span>&ensp;<span class="boundvar">_</span>&ensp;:&ensp;<span class="boundvar">nmv</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<span class="boundvar">flds</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Builtin.Void"><span class="name type">Void</span></span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.IsFieldIrrelevant"><code><a class="type" href="Data.Record.html#Data.Record.IsFieldIrrelevant"><span class="name function">IsFieldIrrelevant</span></a>&ensp;:&ensp;(<span class="boundvar">p</span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.IsField"><span class="name function">IsField</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">flds</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">q</span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.IsField"><span class="name function">IsField</span></a>&ensp;<span class="boundvar">nm</span>&ensp;<span class="boundvar">flds</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">p</span>&ensp;<span class="keyword">=</span>&ensp;<span class="boundvar">q</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.isField"><code><a class="type" href="Data.Record.html#Data.Record.isField"><span class="name function">isField</span></a>&ensp;:&ensp;(<span class="boundvar">fldName</span>&ensp;:&ensp;<span class="name type">String</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">flds</span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Prelude.Types.Dec"><span class="name type">Dec</span></span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.IsField"><span class="name function">IsField</span></a>&ensp;<span class="boundvar">fldName</span>&ensp;<span class="boundvar">flds</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.field"><code><a class="type" href="Data.Record.html#Data.Record.field"><span class="name function">field</span></a>&ensp;:&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;<span class="boundvar">p</span>&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<span class="boundvar">a</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.(.project)"><code><a class="type" href="Data.Record.html#Data.Record.(.project)"><span class="name function">.project</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">name</span>&ensp;:&ensp;<span class="name type">String</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;{<span class="keyword">auto</span>&ensp;<span class="boundvar">pos</span>&ensp;:&ensp;<span class="type resolved" title="Decidable.Decidable.IsYes"><span class="name type">IsYes</span></span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.isField"><span class="name function">isField</span></a>&ensp;<span class="boundvar">name</span>&ensp;<span class="boundvar">flds</span>)}&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">f</span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.field"><span class="name function">field</span></a>&ensp;(<a class="type" href="Decidable.Decidable.Extra1.html#Decidable.Decidable.Extra1.toWitness"><span class="name function">toWitness</span></a>&ensp;<span class="boundvar">pos</span>))</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.tabulate"><code><a class="type" href="Data.Record.html#Data.Record.tabulate"><span class="name function">tabulate</span></a>&ensp;:&ensp;(<span class="boundvar">args</span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.ArgList"><span class="name function">ArgList</span></a>)&ensp;<span class="keyword">-&gt;</span>&ensp;((<span class="boundvar">arg</span>&ensp;:&ensp;<span class="name type">String</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;(\<span class="boundvar">{arg:0}</span>&ensp;<span class="keyword">=&gt;</span>&ensp;<span class="boundvar">arg</span>&ensp;<span class="keyword">=</span>&ensp;<span class="boundvar">{arg:0}</span>)&ensp;<span class="boundvar">args</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">arg</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<span class="boundvar">a</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.tabulateFreshness"><code><span class="keyword">0</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.tabulateFreshness"><span class="name function">tabulateFreshness</span></a>&ensp;:&ensp;{<span class="keyword">0</span>&ensp;<span class="boundvar">a</span>&ensp;:&ensp;<span class="name type">String</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>}&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">args</span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.ArgList"><span class="name function">ArgList</span></a>)&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">f</span>&ensp;:&ensp;((<span class="boundvar">arg</span>&ensp;:&ensp;<span class="name type">String</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="type resolved" title="Data.List.Fresh.Quantifiers.Any.Any"><span class="name type">Any</span></span>&ensp;(\<span class="boundvar">{arg:0}</span>&ensp;<span class="keyword">=&gt;</span>&ensp;<span class="boundvar">arg</span>&ensp;<span class="keyword">=</span>&ensp;<span class="boundvar">{arg:0}</span>)&ensp;<span class="boundvar">args</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">arg</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">y</span>&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<span class="boundvar">args</span>&ensp;<span class="keyword">-&gt;</span>&ensp;(<span class="boundvar">y</span>&ensp;<span class="keyword">**</span>&ensp;<span class="boundvar">u</span>)&ensp;<a class="type" href="Data.List.Fresh.html#Data.List.Fresh.(#)"><span class="name function">#</span></a>&ensp;<a class="type" href="Data.Record.html#Data.Record.tabulate"><span class="name function">tabulate</span></a>&ensp;<span class="boundvar">args</span>&ensp;<span class="boundvar">f</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.map"><code><a class="type" href="Data.Record.html#Data.Record.map"><span class="name function">map</span></a>&ensp;:&ensp;((<span class="boundvar">nm</span>&ensp;:&ensp;<span class="name type">String</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span>&ensp;<span class="boundvar">nm</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span>&ensp;<span class="boundvar">nm</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<span class="boundvar">b</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.foldl"><code><a class="type" href="Data.Record.html#Data.Record.foldl"><span class="name function">foldl</span></a>&ensp;:&ensp;(<span class="boundvar">b</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;(<span class="type resolved" title="Prelude.Basics.const"><span class="name function">const</span></span>&ensp;<span class="boundvar">a</span>)&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">b</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.TypeFields"><code><a class="type" href="Data.Record.html#Data.Record.TypeFields"><span class="name function">TypeFields</span></a>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;(<span class="type resolved" title="Prelude.Basics.const"><span class="name function">const</span></span>&ensp;<span class="name type">Type</span>)&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;(<span class="type resolved" title="Prelude.Basics.const"><span class="name function">const</span></span>&ensp;<span class="name type">Type</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.PartialRecord"><code><a class="type" href="Data.Record.html#Data.Record.PartialRecord"><span class="name function">PartialRecord</span></a>&ensp;:&ensp;(<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Fields"><span class="name function">Fields</span></a>&ensp;<span class="boundvar">a</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="name type">Type</span></code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.traverse"><code><a class="type" href="Data.Record.html#Data.Record.traverse"><span class="name function">traverse</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Interfaces.Applicative"><span class="name type">Applicative</span></span>&ensp;<span class="boundvar">m</span>&ensp;<span class="keyword">=&gt;</span>&ensp;((<span class="boundvar">x</span>&ensp;:&ensp;<a class="type" href="Data.Record.html#Data.Record.Field"><span class="name function">Field</span></a>&ensp;<span class="boundvar">a</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">x</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">m</span>&ensp;(<span class="boundvar">g</span>&ensp;<span class="boundvar">x</span>))&ensp;<span class="keyword">-&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">m</span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="boundvar">g</span>&ensp;<span class="boundvar">flds</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd><dt id="Data.Record.sequence"><code><a class="type" href="Data.Record.html#Data.Record.sequence"><span class="name function">sequence</span></a>&ensp;:&ensp;<span class="type resolved" title="Prelude.Interfaces.Applicative"><span class="name type">Applicative</span></span>&ensp;<span class="boundvar">g</span>&ensp;<span class="keyword">=&gt;</span>&ensp;<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;(<span class="boundvar">g</span>&ensp;<span class="type resolved" title="Prelude.Basics.(.)"><span class="name function">.</span></span>&ensp;<span class="boundvar">f</span>)&ensp;<span class="boundvar">flds</span>&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">g</span>&ensp;(<a class="type" href="Data.Record.html#Data.Record.Record"><span class="name type">Record</span></a>&ensp;<span class="boundvar">f</span>&ensp;<span class="boundvar">flds</span>)</code></dt><dd>  <b>Totality</b>:&ensp;<span class="keyword">total</span><br>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd></dl></div><footer>Produced by Idris 2 version 0.7.0</footer></body></html>
\ No newline at end of file
diff --git a/docs/Decidable.Decidable.Extra1.html b/docs/Decidable.Decidable.Extra1.html
index aa71b64..e4d044e 100644
--- a/docs/Decidable.Decidable.Extra1.html
+++ b/docs/Decidable.Decidable.Extra1.html
@@ -1 +1,64 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>Decidable.Decidable.Extra1</title><link rel="stylesheet" href="../styles.css"></head><body class="namespace"><header><strong>Idris2Doc</strong> : Decidable.Decidable.Extra1<nav><a href="../index.html">Index</a></nav></header><div class="container"><div id="moduleHeader"><h1>Decidable.Decidable.Extra1</h1><p></p></div><dl class="decls"><dt id="Decidable.Decidable.Extra1.toWitness"><a class="type" href="Decidable.Decidable.Extra1.html#Decidable.Decidable.Extra1.toWitness"><span class="name function">toWitness</span></a>&ensp;:&ensp;(0&ensp;<!-- ann ignored START -->_<!-- ann END -->&ensp;:&ensp;<span class="type resolved" title="Decidable.Decidable.IsYes"><span class="name type">IsYes</span></span>&ensp;<!-- ann ignored START -->prf<!-- ann END -->)&ensp;-&gt;&ensp;<!-- ann ignored START -->a<!-- ann END --></dt><dd>  </dd></dl></div><footer>Produced by Idris 2 version 0.4.0-c86184575</footer></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="en">
+
+<head>
+  <meta charset="utf-8">
+  <title>Decidable.Decidable.Extra1</title>
+  <link rel="stylesheet" type="text/css" id="preferredStyle" href="../default.css">
+  <script>
+    /* Updates the stylesheet to use the preferred one.
+       Note that we set the link to root ++ sourceLoc because the config
+       is shared across the whole website, so the root may differ from
+       page to page.
+    */
+    function setStyleSource (sourceLoc) {
+      document.getElementById("preferredStyle").href = "../" + sourceLoc + ".css";
+      document.getElementById("selectPreferredStyle").value = sourceLoc;
+    }
+    /* Initialises the preferred style sheet:
+       1. if there is a stored value then use that
+          otherwise select the default
+       2. set both the css link href & the drop down menu selected option
+    */
+    function initStyleSource () {
+      var preferredStyle = localStorage.getItem("stylefile");
+      if (preferredStyle !== null) {
+        setStyleSource(preferredStyle);
+      } else {
+        setStyleSource("default");
+      };
+    }
+    function saveStyleSource (preferredStyle) {
+      localStorage.stylefile = preferredStyle;
+    }
+    </script>
+</head>
+
+<body class="namespace">
+<header>
+  <strong>Idris2Doc</strong> : Decidable.Decidable.Extra1
+  <nav><a href="../index.html">Index</a>
+
+  <select id="selectPreferredStyle">
+    <option value="default">Default</option>
+<option value="alternative">Alternative</option>
+<option value="blackandwhite">Black & White</option>
+
+  </select>
+  </nav>
+
+  <script>
+  /* We start by initialising the style source */
+  initStyleSource();
+
+  /* This listens for changes on the drop down menu and updates the
+     css used for the current page when a selection is made.
+  */
+  document.getElementById("selectPreferredStyle").addEventListener("change", function(){
+    var selected = this.options[this.selectedIndex].value; /* the option chosen */
+    setStyleSource (selected);
+    saveStyleSource (selected);
+  });
+</script>
+
+</header>
+<div class="container"><div id="module-header"><h1>Decidable.Decidable.Extra1</h1><pre></pre></div><h2>Reexports</h2><code><span class="keyword">import</span>&ensp;<span class="keyword">public</span>&ensp;Decidable.Decidable</code><h2>Definitions</h2><dl class="decls"><dt id="Decidable.Decidable.Extra1.toWitness"><code><a class="type" href="Decidable.Decidable.Extra1.html#Decidable.Decidable.Extra1.toWitness"><span class="name function">toWitness</span></a>&ensp;:&ensp;(<span class="keyword">0</span>&ensp;<span class="boundvar">_</span>&ensp;:&ensp;<span class="type resolved" title="Decidable.Decidable.IsYes"><span class="name type">IsYes</span></span>&ensp;<span class="boundvar">prf</span>)&ensp;<span class="keyword">-&gt;</span>&ensp;<span class="boundvar">a</span></code></dt><dd>  <b>Visibility</b>:&ensp;<span class="keyword">public&ensp;export</span></dd></dl></div><footer>Produced by Idris 2 version 0.7.0</footer></body></html>
\ No newline at end of file
diff --git a/index.html b/index.html
index 6391baa..7101b1e 100644
--- a/index.html
+++ b/index.html
@@ -1 +1,64 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>collie</title><link rel="stylesheet" href="styles.css"></head><body class="index"><header><strong>Idris2Doc</strong> : collie<nav><a href="index.html">Index</a></nav></header><div class="container"><h1>Package collie - Namespaces</h1><ul class="names"><li><a class="code" href="docs/Collie.html">Collie</a></li><li><a class="code" href="docs/Collie.Core.html">Collie.Core</a></li><li><a class="code" href="docs/Collie.Error.html">Collie.Error</a></li><li><a class="code" href="docs/Collie.Modifiers.html">Collie.Modifiers</a></li><li><a class="code" href="docs/Collie.Options.Domain.html">Collie.Options.Domain</a></li><li><a class="code" href="docs/Collie.Options.Usual.html">Collie.Options.Usual</a></li><li><a class="code" href="docs/Collie.Parser.html">Collie.Parser</a></li><li><a class="code" href="docs/Collie.Usage.html">Collie.Usage</a></li><li><a class="code" href="docs/Data.List.Fresh.html">Data.List.Fresh</a></li><li><a class="code" href="docs/Data.List.Fresh.Elem.html">Data.List.Fresh.Elem</a></li><li><a class="code" href="docs/Data.List.Fresh.Quantifiers.html">Data.List.Fresh.Quantifiers</a></li><li><a class="code" href="docs/Data.List.Fresh.Quantifiers.SmartConstructors.html">Data.List.Fresh.Quantifiers.SmartConstructors</a></li><li><a class="code" href="docs/Data.Magma.html">Data.Magma</a></li><li><a class="code" href="docs/Data.Record.html">Data.Record</a></li><li><a class="code" href="docs/Data.Record.SmartConstructors.html">Data.Record.SmartConstructors</a></li><li><a class="code" href="docs/Decidable.Decidable.Extra1.html">Decidable.Decidable.Extra1</a></li></ul></div><footer>Produced by Idris 2 version 0.4.0-c86184575</footer></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="en">
+
+<head>
+  <meta charset="utf-8">
+  <title>collie</title>
+  <link rel="stylesheet" type="text/css" id="preferredStyle" href="default.css">
+  <script>
+    /* Updates the stylesheet to use the preferred one.
+       Note that we set the link to root ++ sourceLoc because the config
+       is shared across the whole website, so the root may differ from
+       page to page.
+    */
+    function setStyleSource (sourceLoc) {
+      document.getElementById("preferredStyle").href = "" + sourceLoc + ".css";
+      document.getElementById("selectPreferredStyle").value = sourceLoc;
+    }
+    /* Initialises the preferred style sheet:
+       1. if there is a stored value then use that
+          otherwise select the default
+       2. set both the css link href & the drop down menu selected option
+    */
+    function initStyleSource () {
+      var preferredStyle = localStorage.getItem("stylefile");
+      if (preferredStyle !== null) {
+        setStyleSource(preferredStyle);
+      } else {
+        setStyleSource("default");
+      };
+    }
+    function saveStyleSource (preferredStyle) {
+      localStorage.stylefile = preferredStyle;
+    }
+    </script>
+</head>
+
+<body class="index">
+<header>
+  <strong>Idris2Doc</strong> : collie
+  <nav><a href="index.html">Index</a>
+
+  <select id="selectPreferredStyle">
+    <option value="default">Default</option>
+<option value="alternative">Alternative</option>
+<option value="blackandwhite">Black & White</option>
+
+  </select>
+  </nav>
+
+  <script>
+  /* We start by initialising the style source */
+  initStyleSource();
+
+  /* This listens for changes on the drop down menu and updates the
+     css used for the current page when a selection is made.
+  */
+  document.getElementById("selectPreferredStyle").addEventListener("change", function(){
+    var selected = this.options[this.selectedIndex].value; /* the option chosen */
+    setStyleSource (selected);
+    saveStyleSource (selected);
+  });
+</script>
+
+</header>
+<div class="container"><h1>Package collie - Namespaces</h1><ul class="names"><li><a class="code" href="docs/Collie.html">Collie</a></li><li><a class="code" href="docs/Collie.Core.html">Collie.Core</a></li><li><a class="code" href="docs/Collie.Error.html">Collie.Error</a></li><li><a class="code" href="docs/Collie.Modifiers.html">Collie.Modifiers</a></li><li><a class="code" href="docs/Collie.Options.Domain.html">Collie.Options.Domain</a></li><li><a class="code" href="docs/Collie.Options.Usual.html">Collie.Options.Usual</a></li><li><a class="code" href="docs/Collie.Parser.html">Collie.Parser</a></li><li><a class="code" href="docs/Collie.Usage.html">Collie.Usage</a></li><li><a class="code" href="docs/Data.List.Fresh.html">Data.List.Fresh</a></li><li><a class="code" href="docs/Data.List.Fresh.Elem.html">Data.List.Fresh.Elem</a></li><li><a class="code" href="docs/Data.List.Fresh.Quantifiers.html">Data.List.Fresh.Quantifiers</a></li><li><a class="code" href="docs/Data.List.Fresh.Quantifiers.SmartConstructors.html">Data.List.Fresh.Quantifiers.SmartConstructors</a></li><li><a class="code" href="docs/Data.Magma.html">Data.Magma</a></li><li><a class="code" href="docs/Data.Record.html">Data.Record</a></li><li><a class="code" href="docs/Data.Record.SmartConstructors.html">Data.Record.SmartConstructors</a></li><li><a class="code" href="docs/Decidable.Decidable.Extra1.html">Decidable.Decidable.Extra1</a></li></ul></div><footer>Produced by Idris 2 version 0.7.0</footer></body></html>
\ No newline at end of file