Skip to content

Commit

Permalink
Share stylesheet (#39)
Browse files Browse the repository at this point in the history
  • Loading branch information
chrisdone committed Sep 9, 2024
1 parent cb4ed94 commit 012f0e2
Show file tree
Hide file tree
Showing 5 changed files with 61 additions and 4 deletions.
20 changes: 19 additions & 1 deletion docs/api/index.html
Original file line number Diff line number Diff line change
@@ -1,4 +1,22 @@
<!DOCTYPE HTML><html><style>body {max-width: 40em; margin: .5in auto;} h1,h2,h3,h4,h5,h6 {font-family: Helvetica;} a {color: #1a6e8e}</style><head><title>Hell&#39;s API</title></head><body><h1>Hell&#39;s API</h1><p><a href="../">Back to homepage</a></p><h2>Types</h2><ul><li><code><em>data </em><strong>Bool</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>ByteString</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Char</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>ConsL</strong><em> :: </em>Symbol -&gt; * -&gt; List -&gt; List</code></li><li><code><em>data </em><strong>Double</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Either</strong><em> :: </em>* -&gt; * -&gt; *</code></li><li><code><em>data </em><strong>ExitCode</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>IO</strong><em> :: </em>* -&gt; *</code></li><li><code><em>data </em><strong>Int</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Map</strong><em> :: </em>* -&gt; * -&gt; *</code></li><li><code><em>data </em><strong>Maybe</strong><em> :: </em>* -&gt; *</code></li><li><code><em>data </em><strong>NilL</strong><em> :: </em>List</code></li><li><code><em>data </em><strong>ProcessConfig</strong><em> :: </em>* -&gt; * -&gt; * -&gt; *</code></li><li><code><em>data </em><strong>Record</strong><em> :: </em>List -&gt; *</code></li><li><code><em>data </em><strong>Set</strong><em> :: </em>* -&gt; *</code></li><li><code><em>data </em><strong>Tagged</strong><em> :: </em>Symbol -&gt; * -&gt; *</code></li><li><code><em>data </em><strong>Text</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Value</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Vector</strong><em> :: </em>* -&gt; *</code></li></ul><h2>Terms</h2><ul><li><code><strong>$</strong><em> :: </em>forall a b . (a -&gt; b) -&gt; a -&gt; b</code></li></ul><ul><li><code><strong>.</strong><em> :: </em>forall a b c . (b -&gt; c) -&gt; (a -&gt; b) -&gt; a -&gt; c</code></li></ul><ul><li><code><strong>Async.concurrently</strong><em> :: </em>forall a b . IO a -&gt; IO b -&gt; IO (a, b)</code></li><li><code><strong>Async.pooledForConcurrently</strong><em> :: </em>forall a b . [a] -&gt; (a -&gt; IO b) -&gt; IO ([b])</code></li><li><code><strong>Async.pooledForConcurrently_</strong><em> :: </em>forall a . [a] -&gt; (a -&gt; IO ()) -&gt; IO ()</code></li><li><code><strong>Async.pooledMapConcurrently</strong><em> :: </em>forall a b . (a -&gt; IO b) -&gt; [a] -&gt; IO ([b])</code></li><li><code><strong>Async.pooledMapConcurrently_</strong><em> :: </em>forall a . (a -&gt; IO ()) -&gt; [a] -&gt; IO ()</code></li><li><code><strong>Async.race</strong><em> :: </em>forall a b . IO a -&gt; IO b -&gt; IO (Either a b)</code></li></ul><ul><li><code><strong>Bool.False</strong><em> :: </em>Bool</code></li><li><code><strong>Bool.True</strong><em> :: </em>Bool</code></li><li><code><strong>Bool.bool</strong><em> :: </em>forall a . a -&gt; a -&gt; Bool -&gt; a</code></li><li><code><strong>Bool.not</strong><em> :: </em>Bool -&gt; Bool</code></li></ul><ul><li><code><strong>ByteString.getContents</strong><em> :: </em>IO ByteString</code></li><li><code><strong>ByteString.hGet</strong><em> :: </em>Handle -&gt; Int -&gt; IO ByteString</code></li><li><code><strong>ByteString.hPutStr</strong><em> :: </em>Handle -&gt; ByteString -&gt; IO ()</code></li><li><code><strong>ByteString.interact</strong><em> :: </em>(ByteString -&gt; ByteString) -&gt; IO ()</code></li><li><code><strong>ByteString.readFile</strong><em> :: </em>Text -&gt; IO ByteString</code></li><li><code><strong>ByteString.readProcess</strong><em> :: </em>ProcessConfig () () () -&gt; IO (ExitCode,ByteString,ByteString)</code></li><li><code><strong>ByteString.readProcessStdout_</strong><em> :: </em>ProcessConfig () () () -&gt; IO ByteString</code></li><li><code><strong>ByteString.readProcess_</strong><em> :: </em>ProcessConfig () () () -&gt; IO (ByteString,ByteString)</code></li><li><code><strong>ByteString.writeFile</strong><em> :: </em>Text -&gt; ByteString -&gt; IO ()</code></li></ul><ul><li><code><strong>Concurrent.threadDelay</strong><em> :: </em>Int -&gt; IO ()</code></li></ul><ul><li><code><strong>Directory.copyFile</strong><em> :: </em>Text -&gt; Text -&gt; IO ()</code></li><li><code><strong>Directory.createDirectory</strong><em> :: </em>Text -&gt; IO ()</code></li><li><code><strong>Directory.createDirectoryIfMissing</strong><em> :: </em>Bool -&gt; Text -&gt; IO ()</code></li><li><code><strong>Directory.getCurrentDirectory</strong><em> :: </em>IO Text</code></li><li><code><strong>Directory.listDirectory</strong><em> :: </em>Text -&gt; IO [Text]</code></li><li><code><strong>Directory.removeFile</strong><em> :: </em>Text -&gt; IO ()</code></li><li><code><strong>Directory.renameFile</strong><em> :: </em>Text -&gt; Text -&gt; IO ()</code></li><li><code><strong>Directory.setCurrentDirectory</strong><em> :: </em>Text -&gt; IO ()</code></li></ul><ul><li><code><strong>Double.eq</strong><em> :: </em>Double -&gt; Double -&gt; Bool</code></li><li><code><strong>Double.fromInt</strong><em> :: </em>Int -&gt; Double</code></li><li><code><strong>Double.plus</strong><em> :: </em>Double -&gt; Double -&gt; Double</code></li><li><code><strong>Double.show</strong><em> :: </em>Double -&gt; Text</code></li><li><code><strong>Double.subtract</strong><em> :: </em>Double -&gt; Double -&gt; Double</code></li></ul><ul><li><code><strong>Either.Left</strong><em> :: </em>forall a b . a -&gt; Either a b</code></li><li><code><strong>Either.Right</strong><em> :: </em>forall a b . b -&gt; Either a b</code></li><li><code><strong>Either.either</strong><em> :: </em>forall a b x . (a -&gt; x) -&gt; (b -&gt; x) -&gt; Either a b -&gt; x</code></li></ul><ul><li><code><strong>Environment.getArgs</strong><em> :: </em>IO [Text]</code></li><li><code><strong>Environment.getEnv</strong><em> :: </em>Text -&gt; IO Text</code></li><li><code><strong>Environment.getEnvironment</strong><em> :: </em>IO [(Text,Text)]</code></li></ul><ul><li><code><strong>Eq.eq</strong><em> :: </em>forall a . Eq a =&gt; a -&gt; a -&gt; Bool</code></li></ul><ul><li><code><strong>Error.error</strong><em> :: </em>forall a . Text -&gt; a</code></li></ul><ul><li><code><strong>Function.fix</strong><em> :: </em>forall a . (a -&gt; a) -&gt; a</code></li><li><code><strong>Function.id</strong><em> :: </em>forall a . a -&gt; a</code></li></ul><ul><li><code><strong>IO.BlockBuffering</strong><em> :: </em>Maybe Int -&gt; BufferMode</code></li><li><code><strong>IO.LineBuffering</strong><em> :: </em>BufferMode</code></li><li><code><strong>IO.NoBuffering</strong><em> :: </em>BufferMode</code></li><li><code><strong>IO.forM_</strong><em> :: </em>forall a . [a] -&gt; (a -&gt; IO ()) -&gt; IO ()</code></li><li><code><strong>IO.hSetBuffering</strong><em> :: </em>Handle -&gt; BufferMode -&gt; IO ()</code></li><li><code><strong>IO.mapM_</strong><em> :: </em>forall a . (a -&gt; IO ()) -&gt; [a] -&gt; IO ()</code></li><li><code><strong>IO.print</strong><em> :: </em>forall a . Show a =&gt; a -&gt; IO ()</code></li><li><code><strong>IO.pure</strong><em> :: </em>forall a . a -&gt; IO a</code></li><li><code><strong>IO.stderr</strong><em> :: </em>Handle</code></li><li><code><strong>IO.stdin</strong><em> :: </em>Handle</code></li><li><code><strong>IO.stdout</strong><em> :: </em>Handle</code></li></ul><ul><li><code><strong>Int.eq</strong><em> :: </em>Int -&gt; Int -&gt; Bool</code></li><li><code><strong>Int.plus</strong><em> :: </em>Int -&gt; Int -&gt; Int</code></li><li><code><strong>Int.show</strong><em> :: </em>Int -&gt; Text</code></li><li><code><strong>Int.subtract</strong><em> :: </em>Int -&gt; Int -&gt; Int</code></li></ul><ul><li><code><strong>Json.Array</strong><em> :: </em>Vector Value -&gt; Value</code></li><li><code><strong>Json.Bool</strong><em> :: </em>Bool -&gt; Value</code></li><li><code><strong>Json.Null</strong><em> :: </em>Value</code></li><li><code><strong>Json.Number</strong><em> :: </em>Double -&gt; Value</code></li><li><code><strong>Json.Object</strong><em> :: </em>Map Text Value -&gt; Value</code></li><li><code><strong>Json.String</strong><em> :: </em>Text -&gt; Value</code></li><li><code><strong>Json.decode</strong><em> :: </em>ByteString -&gt; Maybe Value</code></li><li><code><strong>Json.encode</strong><em> :: </em>Value -&gt; ByteString</code></li><li><code><strong>Json.value</strong><em> :: </em>forall a .
<!DOCTYPE HTML><html><style>body {max-width: 40em; margin: .5in auto;}
h1,h2,h3,h4,h5,h6 {font-family: Helvetica;}
a {color: #1a6e8e}
pre, code {font-size: 16px; word-wrap: break-word;}
pre.sourceCode span.st {color: #366354}
pre.sourceCode span.kw {color: #397460}
pre.sourceCode span.fu {color: #8f4e8b}
pre.sourceCode span.ot {color: #2e659c}
pre.sourceCode span.dt {color: #4F4371}
pre.sourceCode span.co {color: #666}

@media(max-width:767px){
body { margin: 1px 4px; }
h1, h2, .menu { margin: 0; }
h1 { font-size: 1.5em; }
h2 { font-size: 1.125em; }
h3 { font-size: 1.0125em; }
}
</style><head><title>Hell&#39;s API</title></head><body><h1>Hell&#39;s API</h1><p><a href="../">Back to homepage</a></p><h2>Types</h2><ul><li><code><em>data </em><strong>Bool</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>ByteString</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Char</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>ConsL</strong><em> :: </em>Symbol -&gt; * -&gt; List -&gt; List</code></li><li><code><em>data </em><strong>Double</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Either</strong><em> :: </em>* -&gt; * -&gt; *</code></li><li><code><em>data </em><strong>ExitCode</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>IO</strong><em> :: </em>* -&gt; *</code></li><li><code><em>data </em><strong>Int</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Map</strong><em> :: </em>* -&gt; * -&gt; *</code></li><li><code><em>data </em><strong>Maybe</strong><em> :: </em>* -&gt; *</code></li><li><code><em>data </em><strong>NilL</strong><em> :: </em>List</code></li><li><code><em>data </em><strong>ProcessConfig</strong><em> :: </em>* -&gt; * -&gt; * -&gt; *</code></li><li><code><em>data </em><strong>Record</strong><em> :: </em>List -&gt; *</code></li><li><code><em>data </em><strong>Set</strong><em> :: </em>* -&gt; *</code></li><li><code><em>data </em><strong>Tagged</strong><em> :: </em>Symbol -&gt; * -&gt; *</code></li><li><code><em>data </em><strong>Text</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Value</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Vector</strong><em> :: </em>* -&gt; *</code></li></ul><h2>Terms</h2><ul><li><code><strong>$</strong><em> :: </em>forall a b . (a -&gt; b) -&gt; a -&gt; b</code></li></ul><ul><li><code><strong>.</strong><em> :: </em>forall a b c . (b -&gt; c) -&gt; (a -&gt; b) -&gt; a -&gt; c</code></li></ul><ul><li><code><strong>Async.concurrently</strong><em> :: </em>forall a b . IO a -&gt; IO b -&gt; IO (a, b)</code></li><li><code><strong>Async.pooledForConcurrently</strong><em> :: </em>forall a b . [a] -&gt; (a -&gt; IO b) -&gt; IO ([b])</code></li><li><code><strong>Async.pooledForConcurrently_</strong><em> :: </em>forall a . [a] -&gt; (a -&gt; IO ()) -&gt; IO ()</code></li><li><code><strong>Async.pooledMapConcurrently</strong><em> :: </em>forall a b . (a -&gt; IO b) -&gt; [a] -&gt; IO ([b])</code></li><li><code><strong>Async.pooledMapConcurrently_</strong><em> :: </em>forall a . (a -&gt; IO ()) -&gt; [a] -&gt; IO ()</code></li><li><code><strong>Async.race</strong><em> :: </em>forall a b . IO a -&gt; IO b -&gt; IO (Either a b)</code></li></ul><ul><li><code><strong>Bool.False</strong><em> :: </em>Bool</code></li><li><code><strong>Bool.True</strong><em> :: </em>Bool</code></li><li><code><strong>Bool.bool</strong><em> :: </em>forall a . a -&gt; a -&gt; Bool -&gt; a</code></li><li><code><strong>Bool.not</strong><em> :: </em>Bool -&gt; Bool</code></li></ul><ul><li><code><strong>ByteString.getContents</strong><em> :: </em>IO ByteString</code></li><li><code><strong>ByteString.hGet</strong><em> :: </em>Handle -&gt; Int -&gt; IO ByteString</code></li><li><code><strong>ByteString.hPutStr</strong><em> :: </em>Handle -&gt; ByteString -&gt; IO ()</code></li><li><code><strong>ByteString.interact</strong><em> :: </em>(ByteString -&gt; ByteString) -&gt; IO ()</code></li><li><code><strong>ByteString.readFile</strong><em> :: </em>Text -&gt; IO ByteString</code></li><li><code><strong>ByteString.readProcess</strong><em> :: </em>ProcessConfig () () () -&gt; IO (ExitCode,ByteString,ByteString)</code></li><li><code><strong>ByteString.readProcessStdout_</strong><em> :: </em>ProcessConfig () () () -&gt; IO ByteString</code></li><li><code><strong>ByteString.readProcess_</strong><em> :: </em>ProcessConfig () () () -&gt; IO (ByteString,ByteString)</code></li><li><code><strong>ByteString.writeFile</strong><em> :: </em>Text -&gt; ByteString -&gt; IO ()</code></li></ul><ul><li><code><strong>Concurrent.threadDelay</strong><em> :: </em>Int -&gt; IO ()</code></li></ul><ul><li><code><strong>Directory.copyFile</strong><em> :: </em>Text -&gt; Text -&gt; IO ()</code></li><li><code><strong>Directory.createDirectory</strong><em> :: </em>Text -&gt; IO ()</code></li><li><code><strong>Directory.createDirectoryIfMissing</strong><em> :: </em>Bool -&gt; Text -&gt; IO ()</code></li><li><code><strong>Directory.getCurrentDirectory</strong><em> :: </em>IO Text</code></li><li><code><strong>Directory.listDirectory</strong><em> :: </em>Text -&gt; IO [Text]</code></li><li><code><strong>Directory.removeFile</strong><em> :: </em>Text -&gt; IO ()</code></li><li><code><strong>Directory.renameFile</strong><em> :: </em>Text -&gt; Text -&gt; IO ()</code></li><li><code><strong>Directory.setCurrentDirectory</strong><em> :: </em>Text -&gt; IO ()</code></li></ul><ul><li><code><strong>Double.eq</strong><em> :: </em>Double -&gt; Double -&gt; Bool</code></li><li><code><strong>Double.fromInt</strong><em> :: </em>Int -&gt; Double</code></li><li><code><strong>Double.plus</strong><em> :: </em>Double -&gt; Double -&gt; Double</code></li><li><code><strong>Double.show</strong><em> :: </em>Double -&gt; Text</code></li><li><code><strong>Double.subtract</strong><em> :: </em>Double -&gt; Double -&gt; Double</code></li></ul><ul><li><code><strong>Either.Left</strong><em> :: </em>forall a b . a -&gt; Either a b</code></li><li><code><strong>Either.Right</strong><em> :: </em>forall a b . b -&gt; Either a b</code></li><li><code><strong>Either.either</strong><em> :: </em>forall a b x . (a -&gt; x) -&gt; (b -&gt; x) -&gt; Either a b -&gt; x</code></li></ul><ul><li><code><strong>Environment.getArgs</strong><em> :: </em>IO [Text]</code></li><li><code><strong>Environment.getEnv</strong><em> :: </em>Text -&gt; IO Text</code></li><li><code><strong>Environment.getEnvironment</strong><em> :: </em>IO [(Text,Text)]</code></li></ul><ul><li><code><strong>Eq.eq</strong><em> :: </em>forall a . Eq a =&gt; a -&gt; a -&gt; Bool</code></li></ul><ul><li><code><strong>Error.error</strong><em> :: </em>forall a . Text -&gt; a</code></li></ul><ul><li><code><strong>Function.fix</strong><em> :: </em>forall a . (a -&gt; a) -&gt; a</code></li><li><code><strong>Function.id</strong><em> :: </em>forall a . a -&gt; a</code></li></ul><ul><li><code><strong>IO.BlockBuffering</strong><em> :: </em>Maybe Int -&gt; BufferMode</code></li><li><code><strong>IO.LineBuffering</strong><em> :: </em>BufferMode</code></li><li><code><strong>IO.NoBuffering</strong><em> :: </em>BufferMode</code></li><li><code><strong>IO.forM_</strong><em> :: </em>forall a . [a] -&gt; (a -&gt; IO ()) -&gt; IO ()</code></li><li><code><strong>IO.hSetBuffering</strong><em> :: </em>Handle -&gt; BufferMode -&gt; IO ()</code></li><li><code><strong>IO.mapM_</strong><em> :: </em>forall a . (a -&gt; IO ()) -&gt; [a] -&gt; IO ()</code></li><li><code><strong>IO.print</strong><em> :: </em>forall a . Show a =&gt; a -&gt; IO ()</code></li><li><code><strong>IO.pure</strong><em> :: </em>forall a . a -&gt; IO a</code></li><li><code><strong>IO.stderr</strong><em> :: </em>Handle</code></li><li><code><strong>IO.stdin</strong><em> :: </em>Handle</code></li><li><code><strong>IO.stdout</strong><em> :: </em>Handle</code></li></ul><ul><li><code><strong>Int.eq</strong><em> :: </em>Int -&gt; Int -&gt; Bool</code></li><li><code><strong>Int.plus</strong><em> :: </em>Int -&gt; Int -&gt; Int</code></li><li><code><strong>Int.show</strong><em> :: </em>Int -&gt; Text</code></li><li><code><strong>Int.subtract</strong><em> :: </em>Int -&gt; Int -&gt; Int</code></li></ul><ul><li><code><strong>Json.Array</strong><em> :: </em>Vector Value -&gt; Value</code></li><li><code><strong>Json.Bool</strong><em> :: </em>Bool -&gt; Value</code></li><li><code><strong>Json.Null</strong><em> :: </em>Value</code></li><li><code><strong>Json.Number</strong><em> :: </em>Double -&gt; Value</code></li><li><code><strong>Json.Object</strong><em> :: </em>Map Text Value -&gt; Value</code></li><li><code><strong>Json.String</strong><em> :: </em>Text -&gt; Value</code></li><li><code><strong>Json.decode</strong><em> :: </em>ByteString -&gt; Maybe Value</code></li><li><code><strong>Json.encode</strong><em> :: </em>Value -&gt; ByteString</code></li><li><code><strong>Json.value</strong><em> :: </em>forall a .
a -&gt;
(Bool -&gt; a) -&gt;
(Text -&gt; a) -&gt;
Expand Down
20 changes: 19 additions & 1 deletion docs/examples/index.html
Original file line number Diff line number Diff line change
@@ -1,4 +1,22 @@
<!doctype html><html><head><style>body {max-width: 40em; margin: .5in auto;} h1,h2,h3,h4,h5,h6 {font-family: Helvetica;} a {color: #1a6e8e} pre, code {font-size: 16px; word-wrap: break-word;} pre.sourceCode span.st {color: #366354} pre.sourceCode span.kw {color: #397460} pre.sourceCode span.fu {color: #8f4e8b} pre.sourceCode span.ot {color: #2e659c} pre.sourceCode span.dt {color: #4F4371} pre.sourceCode span.co {color: #666}</style></head><body><h1>Hell examples</h1><p><a href='../'>Back to homepage</a></p><h2>01-hello-world.hell</h2><div class="sourceCode" id="cb1"><pre
<!doctype html><html><head><style>body {max-width: 40em; margin: .5in auto;}
h1,h2,h3,h4,h5,h6 {font-family: Helvetica;}
a {color: #1a6e8e}
pre, code {font-size: 16px; word-wrap: break-word;}
pre.sourceCode span.st {color: #366354}
pre.sourceCode span.kw {color: #397460}
pre.sourceCode span.fu {color: #8f4e8b}
pre.sourceCode span.ot {color: #2e659c}
pre.sourceCode span.dt {color: #4F4371}
pre.sourceCode span.co {color: #666}

@media(max-width:767px){
body { margin: 1px 4px; }
h1, h2, .menu { margin: 0; }
h1 { font-size: 1.5em; }
h2 { font-size: 1.125em; }
h3 { font-size: 1.0125em; }
}
</style></head><body><h1>Hell examples</h1><p><a href='../'>Back to homepage</a></p><h2>01-hello-world.hell</h2><div class="sourceCode" id="cb1"><pre
class="sourceCode haskell"><code class="sourceCode haskell"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="pp">#!/usr/bin/env hell</span></span>
<span id="cb1-2"><a href="#cb1-2" aria-hidden="true" tabindex="-1"></a>main <span class="ot">=</span> Text.putStrLn <span class="st">&quot;Hello, World!&quot;</span></span></code></pre></div>
<h2>02-interaction.hell</h2><div class="sourceCode" id="cb1"><pre
Expand Down
18 changes: 18 additions & 0 deletions docs/style.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
body {max-width: 40em; margin: .5in auto;}
h1,h2,h3,h4,h5,h6 {font-family: Helvetica;}
a {color: #1a6e8e}
pre, code {font-size: 16px; word-wrap: break-word;}
pre.sourceCode span.st {color: #366354}
pre.sourceCode span.kw {color: #397460}
pre.sourceCode span.fu {color: #8f4e8b}
pre.sourceCode span.ot {color: #2e659c}
pre.sourceCode span.dt {color: #4F4371}
pre.sourceCode span.co {color: #666}

@media(max-width:767px){
body { margin: 1px 4px; }
h1, h2, .menu { margin: 0; }
h1 { font-size: 1.5em; }
h2 { font-size: 1.125em; }
h3 { font-size: 1.0125em; }
}
Loading

0 comments on commit 012f0e2

Please sign in to comment.