<html xmlns="http://www.w3.org/1999/xhtml"
><head
  ><link rel="stylesheet" type="text/css" href="style.css"
     /><script type="text/javascript" src="highlight.js"
    ></script
    ></head
  ><body
  ><pre
    ><span class="hs-pragma"
      >{-# LANGUAGE RankNTypes #-}</span
      ><span
      >
</span
      ><span id="line-2"
      ></span
      ><span class="hs-pragma"
      >{-# LANGUAGE ScopedTypeVariables #-}</span
      ><span
      >
</span
      ><span id="line-3"
      ></span
      ><span
      >
</span
      ><span id="line-4"
      ></span
      ><span
      >
</span
      ><span id="line-5"
      ></span
      ><span class="hs-keyword"
      >module</span
      ><span
      > </span
      ><span class="hs-identifier"
      >Polymorphism</span
      ><span
      > </span
      ><span class="hs-keyword"
      >where</span
      ><span
      >
</span
      ><span id="line-6"
      ></span
      ><span
      >
</span
      ><span id="line-7"
      ></span
      ><span
      >
</span
      ><span id="line-8"
      ></span
      ><span id=""
      ><span class="annot"
	><a href="Polymorphism.html#foo"
	  ><span class="hs-identifier hs-type"
	    >foo</span
	    ></a
	  ></span
	><span
	> </span
	><span class="hs-glyph"
	>::</span
	><span
	> </span
	><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	><span
	> </span
	><span class="hs-glyph"
	>-&gt;</span
	><span
	> </span
	><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	><span
	> </span
	><span class="hs-glyph"
	>-&gt;</span
	><span
	> </span
	><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	></span
      ><span
      >
</span
      ><span id="line-9"
      ></span
      ><span id="foo"
      ><span class="annot"
	><span class="annottext"
	  >foo :: a -&gt; a -&gt; a
</span
	  ><a href="Polymorphism.html#foo"
	  ><span class="hs-identifier hs-var hs-var"
	    >foo</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>a -&gt; a -&gt; a
forall a. HasCallStack =&gt; a
</span
	><span class="hs-identifier hs-var"
	>undefined</span
	></span
      ><span
      >
</span
      ><span id="line-10"
      ></span
      ><span
      >
</span
      ><span id="line-11"
      ></span
      ><span class="annot"
      ><a href="Polymorphism.html#foo%27"
	><span class="hs-identifier hs-type"
	  >foo'</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >::</span
      ><span
      > </span
      ><span class="hs-keyword"
      >forall</span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	></span
      ><span class="hs-operator"
      >.</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      >
</span
      ><span id="line-12"
      ></span
      ><span id="foo%27"
      ><span class="annot"
	><span class="annottext"
	  >foo' :: a -&gt; a -&gt; a
</span
	  ><a href="Polymorphism.html#foo%27"
	  ><span class="hs-identifier hs-var hs-var"
	    >foo'</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>a -&gt; a -&gt; a
forall a. HasCallStack =&gt; a
</span
	><span class="hs-identifier hs-var"
	>undefined</span
	></span
      ><span
      >
</span
      ><span id="line-13"
      ></span
      ><span
      >
</span
      ><span id="line-14"
      ></span
      ><span id=""
      ><span id=""
	><span class="annot"
	  ><a href="Polymorphism.html#bar"
	    ><span class="hs-identifier hs-type"
	      >bar</span
	      ></a
	    ></span
	  ><span
	  > </span
	  ><span class="hs-glyph"
	  >::</span
	  ><span
	  > </span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >a</span
	      ></a
	    ></span
	  ><span
	  > </span
	  ><span class="hs-glyph"
	  >-&gt;</span
	  ><span
	  > </span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >b</span
	      ></a
	    ></span
	  ><span
	  > </span
	  ><span class="hs-glyph"
	  >-&gt;</span
	  ><span
	  > </span
	  ><span class="hs-special"
	  >(</span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >a</span
	      ></a
	    ></span
	  ><span class="hs-special"
	  >,</span
	  ><span
	  > </span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >b</span
	      ></a
	    ></span
	  ><span class="hs-special"
	  >)</span
	  ></span
	></span
      ><span
      >
</span
      ><span id="line-15"
      ></span
      ><span id="bar"
      ><span class="annot"
	><span class="annottext"
	  >bar :: a -&gt; b -&gt; (a, b)
</span
	  ><a href="Polymorphism.html#bar"
	  ><span class="hs-identifier hs-var hs-var"
	    >bar</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>a -&gt; b -&gt; (a, b)
forall a. HasCallStack =&gt; a
</span
	><span class="hs-identifier hs-var"
	>undefined</span
	></span
      ><span
      >
</span
      ><span id="line-16"
      ></span
      ><span
      >
</span
      ><span id="line-17"
      ></span
      ><span class="annot"
      ><a href="Polymorphism.html#bar%27"
	><span class="hs-identifier hs-type"
	  >bar'</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >::</span
      ><span
      > </span
      ><span class="hs-keyword"
      >forall</span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >b</span
	    ></a
	  ></span
	></span
      ><span class="hs-operator"
      >.</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >b</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="hs-special"
      >(</span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span class="hs-special"
      >,</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >b</span
	  ></a
	></span
      ><span class="hs-special"
      >)</span
      ><span
      >
</span
      ><span id="line-18"
      ></span
      ><span id="bar%27"
      ><span class="annot"
	><span class="annottext"
	  >bar' :: a -&gt; b -&gt; (a, b)
</span
	  ><a href="Polymorphism.html#bar%27"
	  ><span class="hs-identifier hs-var hs-var"
	    >bar'</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>a -&gt; b -&gt; (a, b)
forall a. HasCallStack =&gt; a
</span
	><span class="hs-identifier hs-var"
	>undefined</span
	></span
      ><span
      >
</span
      ><span id="line-19"
      ></span
      ><span
      >
</span
      ><span id="line-20"
      ></span
      ><span id=""
      ><span id=""
	><span class="annot"
	  ><a href="Polymorphism.html#baz"
	    ><span class="hs-identifier hs-type"
	      >baz</span
	      ></a
	    ></span
	  ><span
	  > </span
	  ><span class="hs-glyph"
	  >::</span
	  ><span
	  > </span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >a</span
	      ></a
	    ></span
	  ><span
	  > </span
	  ><span class="hs-glyph"
	  >-&gt;</span
	  ><span
	  > </span
	  ><span class="hs-special"
	  >(</span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >a</span
	      ></a
	    ></span
	  ><span
	  > </span
	  ><span class="hs-glyph"
	  >-&gt;</span
	  ><span
	  > </span
	  ><span class="hs-special"
	  >[</span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >a</span
	      ></a
	    ></span
	  ><span
	  > </span
	  ><span class="hs-glyph"
	  >-&gt;</span
	  ><span
	  > </span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >a</span
	      ></a
	    ></span
	  ><span class="hs-special"
	  >]</span
	  ><span
	  > </span
	  ><span class="hs-glyph"
	  >-&gt;</span
	  ><span
	  > </span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >b</span
	      ></a
	    ></span
	  ><span class="hs-special"
	  >)</span
	  ><span
	  > </span
	  ><span class="hs-glyph"
	  >-&gt;</span
	  ><span
	  > </span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >b</span
	      ></a
	    ></span
	  ></span
	></span
      ><span
      >
</span
      ><span id="line-21"
      ></span
      ><span id="baz"
      ><span class="annot"
	><span class="annottext"
	  >baz :: a -&gt; (a -&gt; [a -&gt; a] -&gt; b) -&gt; b
</span
	  ><a href="Polymorphism.html#baz"
	  ><span class="hs-identifier hs-var hs-var"
	    >baz</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>a -&gt; (a -&gt; [a -&gt; a] -&gt; b) -&gt; b
forall a. HasCallStack =&gt; a
</span
	><span class="hs-identifier hs-var"
	>undefined</span
	></span
      ><span
      >
</span
      ><span id="line-22"
      ></span
      ><span
      >
</span
      ><span id="line-23"
      ></span
      ><span class="annot"
      ><a href="Polymorphism.html#baz%27"
	><span class="hs-identifier hs-type"
	  >baz'</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >::</span
      ><span
      > </span
      ><span class="hs-keyword"
      >forall</span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >b</span
	    ></a
	  ></span
	></span
      ><span class="hs-operator"
      >.</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="hs-special"
      >(</span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="hs-special"
      >[</span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span class="hs-special"
      >]</span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >b</span
	  ></a
	></span
      ><span class="hs-special"
      >)</span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >b</span
	  ></a
	></span
      ><span
      >
</span
      ><span id="line-24"
      ></span
      ><span id="baz%27"
      ><span class="annot"
	><span class="annottext"
	  >baz' :: a -&gt; (a -&gt; [a -&gt; a] -&gt; b) -&gt; b
</span
	  ><a href="Polymorphism.html#baz%27"
	  ><span class="hs-identifier hs-var hs-var"
	    >baz'</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>a -&gt; (a -&gt; [a -&gt; a] -&gt; b) -&gt; b
forall a. HasCallStack =&gt; a
</span
	><span class="hs-identifier hs-var"
	>undefined</span
	></span
      ><span
      >
</span
      ><span id="line-25"
      ></span
      ><span
      >
</span
      ><span id="line-26"
      ></span
      ><span id=""
      ><span class="annot"
	><a href="Polymorphism.html#quux"
	  ><span class="hs-identifier hs-type"
	    >quux</span
	    ></a
	  ></span
	><span
	> </span
	><span class="hs-glyph"
	>::</span
	><span
	> </span
	><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	><span
	> </span
	><span class="hs-glyph"
	>-&gt;</span
	><span
	> </span
	><span class="hs-special"
	>(</span
	><span class="hs-keyword"
	>forall</span
	><span
	> </span
	><span id=""
	><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >a</span
	      ></a
	    ></span
	  ></span
	><span class="hs-operator"
	>.</span
	><span
	> </span
	><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	><span
	> </span
	><span class="hs-glyph"
	>-&gt;</span
	><span
	> </span
	><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	><span class="hs-special"
	>)</span
	><span
	> </span
	><span class="hs-glyph"
	>-&gt;</span
	><span
	> </span
	><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	></span
      ><span
      >
</span
      ><span id="line-27"
      ></span
      ><span id="quux"
      ><span class="annot"
	><span class="annottext"
	  >quux :: a -&gt; (forall a. a -&gt; a) -&gt; a
</span
	  ><a href="Polymorphism.html#quux"
	  ><span class="hs-identifier hs-var hs-var"
	    >quux</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><span class="annottext"
	  >x :: a
</span
	  ><a href="#"
	  ><span class="hs-identifier hs-var"
	    >x</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><span class="annottext"
	  >f :: forall a. a -&gt; a
</span
	  ><a href="#"
	  ><span class="hs-identifier hs-var"
	    >f</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>a -&gt; a
forall a. a -&gt; a
</span
	><a href="#"
	><span class="hs-identifier hs-var"
	  >f</span
	  ></a
	></span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>a
</span
	><a href="#"
	><span class="hs-identifier hs-var"
	  >x</span
	  ></a
	></span
      ><span
      >
</span
      ><span id="line-28"
      ></span
      ><span
      >
</span
      ><span id="line-29"
      ></span
      ><span class="annot"
      ><a href="Polymorphism.html#quux%27"
	><span class="hs-identifier hs-type"
	  >quux'</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >::</span
      ><span
      > </span
      ><span class="hs-keyword"
      >forall</span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	></span
      ><span class="hs-operator"
      >.</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="hs-special"
      >(</span
      ><span class="hs-keyword"
      >forall</span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	></span
      ><span class="hs-operator"
      >.</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span class="hs-special"
      >)</span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      >
</span
      ><span id="line-30"
      ></span
      ><span id="quux%27"
      ><span class="annot"
	><span class="annottext"
	  >quux' :: a -&gt; (forall a. a -&gt; a) -&gt; a
</span
	  ><a href="Polymorphism.html#quux%27"
	  ><span class="hs-identifier hs-var hs-var"
	    >quux'</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><span class="annottext"
	  >x :: a
</span
	  ><a href="#"
	  ><span class="hs-identifier hs-var"
	    >x</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><span class="annottext"
	  >f :: forall a. a -&gt; a
</span
	  ><a href="#"
	  ><span class="hs-identifier hs-var"
	    >f</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>a -&gt; a
forall a. a -&gt; a
</span
	><a href="#"
	><span class="hs-identifier hs-var"
	  >f</span
	  ></a
	></span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>a
</span
	><a href="#"
	><span class="hs-identifier hs-var"
	  >x</span
	  ></a
	></span
      ><span
      >
</span
      ><span id="line-31"
      ></span
      ><span
      >
</span
      ><span id="line-32"
      ></span
      ><span
      >
</span
      ><span id="line-33"
      ></span
      ><span id=""
      ><span class="annot"
	><a href="Polymorphism.html#num"
	  ><span class="hs-identifier hs-type"
	    >num</span
	    ></a
	  ></span
	><span
	> </span
	><span class="hs-glyph"
	>::</span
	><span
	> </span
	><span class="annot"
	><span class="hs-identifier hs-type"
	  >Num</span
	  ></span
	><span
	> </span
	><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	><span
	> </span
	><span class="hs-glyph"
	>=&gt;</span
	><span
	> </span
	><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	><span
	> </span
	><span class="hs-glyph"
	>-&gt;</span
	><span
	> </span
	><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	><span
	> </span
	><span class="hs-glyph"
	>-&gt;</span
	><span
	> </span
	><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	></span
      ><span
      >
</span
      ><span id="line-34"
      ></span
      ><span id="num"
      ><span class="annot"
	><span class="annottext"
	  >num :: a -&gt; a -&gt; a
</span
	  ><a href="Polymorphism.html#num"
	  ><span class="hs-identifier hs-var hs-var"
	    >num</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>a -&gt; a -&gt; a
forall a. HasCallStack =&gt; a
</span
	><span class="hs-identifier hs-var"
	>undefined</span
	></span
      ><span
      >
</span
      ><span id="line-35"
      ></span
      ><span
      >
</span
      ><span id="line-36"
      ></span
      ><span class="annot"
      ><a href="Polymorphism.html#num%27"
	><span class="hs-identifier hs-type"
	  >num'</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >::</span
      ><span
      > </span
      ><span class="hs-keyword"
      >forall</span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	></span
      ><span class="hs-operator"
      >.</span
      ><span
      > </span
      ><span class="annot"
      ><span class="hs-identifier hs-type"
	>Num</span
	></span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      >
</span
      ><span id="line-37"
      ></span
      ><span id="num%27"
      ><span class="annot"
	><span class="annottext"
	  >num' :: a -&gt; a -&gt; a
</span
	  ><a href="Polymorphism.html#num%27"
	  ><span class="hs-identifier hs-var hs-var"
	    >num'</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>a -&gt; a -&gt; a
forall a. HasCallStack =&gt; a
</span
	><span class="hs-identifier hs-var"
	>undefined</span
	></span
      ><span
      >
</span
      ><span id="line-38"
      ></span
      ><span
      >
</span
      ><span id="line-39"
      ></span
      ><span id=""
      ><span id=""
	><span class="annot"
	  ><a href="Polymorphism.html#eq"
	    ><span class="hs-identifier hs-type"
	      >eq</span
	      ></a
	    ></span
	  ><span
	  > </span
	  ><span class="hs-glyph"
	  >::</span
	  ><span
	  > </span
	  ><span class="hs-special"
	  >(</span
	  ><span class="annot"
	  ><span class="hs-identifier hs-type"
	    >Eq</span
	    ></span
	  ><span
	  > </span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >a</span
	      ></a
	    ></span
	  ><span class="hs-special"
	  >,</span
	  ><span
	  > </span
	  ><span class="annot"
	  ><span class="hs-identifier hs-type"
	    >Eq</span
	    ></span
	  ><span
	  > </span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >b</span
	      ></a
	    ></span
	  ><span class="hs-special"
	  >)</span
	  ><span
	  > </span
	  ><span class="hs-glyph"
	  >=&gt;</span
	  ><span
	  > </span
	  ><span class="hs-special"
	  >[</span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >a</span
	      ></a
	    ></span
	  ><span class="hs-special"
	  >]</span
	  ><span
	  > </span
	  ><span class="hs-glyph"
	  >-&gt;</span
	  ><span
	  > </span
	  ><span class="hs-special"
	  >[</span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >b</span
	      ></a
	    ></span
	  ><span class="hs-special"
	  >]</span
	  ><span
	  > </span
	  ><span class="hs-glyph"
	  >-&gt;</span
	  ><span
	  > </span
	  ><span class="hs-special"
	  >(</span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >a</span
	      ></a
	    ></span
	  ><span class="hs-special"
	  >,</span
	  ><span
	  > </span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >b</span
	      ></a
	    ></span
	  ><span class="hs-special"
	  >)</span
	  ></span
	></span
      ><span
      >
</span
      ><span id="line-40"
      ></span
      ><span id="eq"
      ><span class="annot"
	><span class="annottext"
	  >eq :: [a] -&gt; [b] -&gt; (a, b)
</span
	  ><a href="Polymorphism.html#eq"
	  ><span class="hs-identifier hs-var hs-var"
	    >eq</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>[a] -&gt; [b] -&gt; (a, b)
forall a. HasCallStack =&gt; a
</span
	><span class="hs-identifier hs-var"
	>undefined</span
	></span
      ><span
      >
</span
      ><span id="line-41"
      ></span
      ><span
      >
</span
      ><span id="line-42"
      ></span
      ><span class="annot"
      ><a href="Polymorphism.html#eq%27"
	><span class="hs-identifier hs-type"
	  >eq'</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >::</span
      ><span
      > </span
      ><span class="hs-keyword"
      >forall</span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >b</span
	    ></a
	  ></span
	></span
      ><span class="hs-operator"
      >.</span
      ><span
      > </span
      ><span class="hs-special"
      >(</span
      ><span class="annot"
      ><span class="hs-identifier hs-type"
	>Eq</span
	></span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span class="hs-special"
      >,</span
      ><span
      > </span
      ><span class="annot"
      ><span class="hs-identifier hs-type"
	>Eq</span
	></span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >b</span
	  ></a
	></span
      ><span class="hs-special"
      >)</span
      ><span
      > </span
      ><span class="hs-glyph"
      >=&gt;</span
      ><span
      > </span
      ><span class="hs-special"
      >[</span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span class="hs-special"
      >]</span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="hs-special"
      >[</span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >b</span
	  ></a
	></span
      ><span class="hs-special"
      >]</span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="hs-special"
      >(</span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span class="hs-special"
      >,</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >b</span
	  ></a
	></span
      ><span class="hs-special"
      >)</span
      ><span
      >
</span
      ><span id="line-43"
      ></span
      ><span id="eq%27"
      ><span class="annot"
	><span class="annottext"
	  >eq' :: [a] -&gt; [b] -&gt; (a, b)
</span
	  ><a href="Polymorphism.html#eq%27"
	  ><span class="hs-identifier hs-var hs-var"
	    >eq'</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>[a] -&gt; [b] -&gt; (a, b)
forall a. HasCallStack =&gt; a
</span
	><span class="hs-identifier hs-var"
	>undefined</span
	></span
      ><span
      >
</span
      ><span id="line-44"
      ></span
      ><span
      >
</span
      ><span id="line-45"
      ></span
      ><span id=""
      ><span id=""
	><span class="annot"
	  ><a href="Polymorphism.html#mon"
	    ><span class="hs-identifier hs-type"
	      >mon</span
	      ></a
	    ></span
	  ><span
	  > </span
	  ><span class="hs-glyph"
	  >::</span
	  ><span
	  > </span
	  ><span class="annot"
	  ><span class="hs-identifier hs-type"
	    >Monad</span
	    ></span
	  ><span
	  > </span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >m</span
	      ></a
	    ></span
	  ><span
	  > </span
	  ><span class="hs-glyph"
	  >=&gt;</span
	  ><span
	  > </span
	  ><span class="hs-special"
	  >(</span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >a</span
	      ></a
	    ></span
	  ><span
	  > </span
	  ><span class="hs-glyph"
	  >-&gt;</span
	  ><span
	  > </span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >m</span
	      ></a
	    ></span
	  ><span
	  > </span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >a</span
	      ></a
	    ></span
	  ><span class="hs-special"
	  >)</span
	  ><span
	  > </span
	  ><span class="hs-glyph"
	  >-&gt;</span
	  ><span
	  > </span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >m</span
	      ></a
	    ></span
	  ><span
	  > </span
	  ><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >a</span
	      ></a
	    ></span
	  ></span
	></span
      ><span
      >
</span
      ><span id="line-46"
      ></span
      ><span id="mon"
      ><span class="annot"
	><span class="annottext"
	  >mon :: (a -&gt; m a) -&gt; m a
</span
	  ><a href="Polymorphism.html#mon"
	  ><span class="hs-identifier hs-var hs-var"
	    >mon</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>(a -&gt; m a) -&gt; m a
forall a. HasCallStack =&gt; a
</span
	><span class="hs-identifier hs-var"
	>undefined</span
	></span
      ><span
      >
</span
      ><span id="line-47"
      ></span
      ><span
      >
</span
      ><span id="line-48"
      ></span
      ><span class="annot"
      ><a href="Polymorphism.html#mon%27"
	><span class="hs-identifier hs-type"
	  >mon'</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >::</span
      ><span
      > </span
      ><span class="hs-keyword"
      >forall</span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >m</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	></span
      ><span class="hs-operator"
      >.</span
      ><span
      > </span
      ><span class="annot"
      ><span class="hs-identifier hs-type"
	>Monad</span
	></span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >m</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=&gt;</span
      ><span
      > </span
      ><span class="hs-special"
      >(</span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >m</span
	  ></a
	></span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span class="hs-special"
      >)</span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >m</span
	  ></a
	></span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      >
</span
      ><span id="line-49"
      ></span
      ><span id="mon%27"
      ><span class="annot"
	><span class="annottext"
	  >mon' :: (a -&gt; m a) -&gt; m a
</span
	  ><a href="Polymorphism.html#mon%27"
	  ><span class="hs-identifier hs-var hs-var"
	    >mon'</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>(a -&gt; m a) -&gt; m a
forall a. HasCallStack =&gt; a
</span
	><span class="hs-identifier hs-var"
	>undefined</span
	></span
      ><span
      >
</span
      ><span id="line-50"
      ></span
      ><span
      >
</span
      ><span id="line-51"
      ></span
      ><span
      >
</span
      ><span id="line-52"
      ></span
      ><span id=""
      ><span class="annot"
	><a href="Polymorphism.html#norf"
	  ><span class="hs-identifier hs-type"
	    >norf</span
	    ></a
	  ></span
	><span
	> </span
	><span class="hs-glyph"
	>::</span
	><span
	> </span
	><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	><span
	> </span
	><span class="hs-glyph"
	>-&gt;</span
	><span
	> </span
	><span class="hs-special"
	>(</span
	><span class="hs-keyword"
	>forall</span
	><span
	> </span
	><span id=""
	><span class="annot"
	  ><a href="#"
	    ><span class="hs-identifier hs-type"
	      >a</span
	      ></a
	    ></span
	  ></span
	><span class="hs-operator"
	>.</span
	><span
	> </span
	><span class="annot"
	><span class="hs-identifier hs-type"
	  >Ord</span
	  ></span
	><span
	> </span
	><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	><span
	> </span
	><span class="hs-glyph"
	>=&gt;</span
	><span
	> </span
	><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	><span
	> </span
	><span class="hs-glyph"
	>-&gt;</span
	><span
	> </span
	><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	><span class="hs-special"
	>)</span
	><span
	> </span
	><span class="hs-glyph"
	>-&gt;</span
	><span
	> </span
	><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	></span
      ><span
      >
</span
      ><span id="line-53"
      ></span
      ><span id="norf"
      ><span class="annot"
	><span class="annottext"
	  >norf :: a -&gt; (forall a. Ord a =&gt; a -&gt; a) -&gt; a
</span
	  ><a href="Polymorphism.html#norf"
	  ><span class="hs-identifier hs-var hs-var"
	    >norf</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><span class="annottext"
	  >x :: a
</span
	  ><a href="#"
	  ><span class="hs-identifier hs-var"
	    >x</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><span class="annottext"
	  >f :: forall a. Ord a =&gt; a -&gt; a
</span
	  ><a href="#"
	  ><span class="hs-identifier hs-var"
	    >f</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>a
</span
	><a href="#"
	><span class="hs-identifier hs-var"
	  >x</span
	  ></a
	></span
      ><span
      >
</span
      ><span id="line-54"
      ></span
      ><span
      >
</span
      ><span id="line-55"
      ></span
      ><span class="annot"
      ><a href="Polymorphism.html#norf%27"
	><span class="hs-identifier hs-type"
	  >norf'</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >::</span
      ><span
      > </span
      ><span class="hs-keyword"
      >forall</span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	></span
      ><span class="hs-operator"
      >.</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="hs-special"
      >(</span
      ><span class="hs-keyword"
      >forall</span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	></span
      ><span class="hs-operator"
      >.</span
      ><span
      > </span
      ><span class="annot"
      ><span class="hs-identifier hs-type"
	>Ord</span
	></span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span class="hs-special"
      >)</span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      >
</span
      ><span id="line-56"
      ></span
      ><span id="norf%27"
      ><span class="annot"
	><span class="annottext"
	  >norf' :: a -&gt; (forall a. Ord a =&gt; a -&gt; a) -&gt; a
</span
	  ><a href="Polymorphism.html#norf%27"
	  ><span class="hs-identifier hs-var hs-var"
	    >norf'</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><span class="annottext"
	  >x :: a
</span
	  ><a href="#"
	  ><span class="hs-identifier hs-var"
	    >x</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><span class="annottext"
	  >f :: forall a. Ord a =&gt; a -&gt; a
</span
	  ><a href="#"
	  ><span class="hs-identifier hs-var"
	    >f</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>a
</span
	><a href="#"
	><span class="hs-identifier hs-var"
	  >x</span
	  ></a
	></span
      ><span
      >
</span
      ><span id="line-57"
      ></span
      ><span
      >
</span
      ><span id="line-58"
      ></span
      ><span
      >
</span
      ><span id="line-59"
      ></span
      ><span class="annot"
      ><a href="Polymorphism.html#plugh"
	><span class="hs-identifier hs-type"
	  >plugh</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >::</span
      ><span
      > </span
      ><span class="hs-keyword"
      >forall</span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	></span
      ><span class="hs-operator"
      >.</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      >
</span
      ><span id="line-60"
      ></span
      ><span id="plugh"
      ><span class="annot"
	><span class="annottext"
	  >plugh :: a -&gt; a
</span
	  ><a href="Polymorphism.html#plugh"
	  ><span class="hs-identifier hs-var hs-var"
	    >plugh</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><span class="annottext"
	  >x :: a
</span
	  ><a href="#"
	  ><span class="hs-identifier hs-var"
	    >x</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>a
</span
	><a href="#"
	><span class="hs-identifier hs-var"
	  >x</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >::</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      >
</span
      ><span id="line-61"
      ></span
      ><span
      >
</span
      ><span id="line-62"
      ></span
      ><span class="annot"
      ><a href="Polymorphism.html#thud"
	><span class="hs-identifier hs-type"
	  >thud</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >::</span
      ><span
      > </span
      ><span class="hs-keyword"
      >forall</span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >a</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><a href="#"
	  ><span class="hs-identifier hs-type"
	    >b</span
	    ></a
	  ></span
	></span
      ><span class="hs-operator"
      >.</span
      ><span
      > </span
      ><span class="hs-special"
      >(</span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >b</span
	  ></a
	></span
      ><span class="hs-special"
      >)</span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="hs-special"
      >(</span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span class="hs-special"
      >,</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >b</span
	  ></a
	></span
      ><span class="hs-special"
      >)</span
      ><span
      >
</span
      ><span id="line-63"
      ></span
      ><span id="thud"
      ><span class="annot"
	><span class="annottext"
	  >thud :: (a -&gt; b) -&gt; a -&gt; (a, b)
</span
	  ><a href="Polymorphism.html#thud"
	  ><span class="hs-identifier hs-var hs-var"
	    >thud</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><span class="annottext"
	  >f :: a -&gt; b
</span
	  ><a href="#"
	  ><span class="hs-identifier hs-var"
	    >f</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span id=""
      ><span class="annot"
	><span class="annottext"
	  >x :: a
</span
	  ><a href="#"
	  ><span class="hs-identifier hs-var"
	    >x</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      >
</span
      ><span id="line-64"
      ></span
      ><span
      >    </span
      ><span class="hs-special"
      >(</span
      ><span class="annot"
      ><span class="annottext"
	>a
</span
	><a href="#"
	><span class="hs-identifier hs-var"
	  >x</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >::</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span class="hs-special"
      >,</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>b
</span
	><a href="#"
	><span class="hs-identifier hs-var"
	  >y</span
	  ></a
	></span
      ><span class="hs-special"
      >)</span
      ><span
      > </span
      ><span class="hs-glyph"
      >::</span
      ><span
      > </span
      ><span class="hs-special"
      >(</span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span class="hs-special"
      >,</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >b</span
	  ></a
	></span
      ><span class="hs-special"
      >)</span
      ><span
      >
</span
      ><span id="line-65"
      ></span
      ><span
      >  </span
      ><span class="hs-keyword"
      >where</span
      ><span
      >
</span
      ><span id="line-66"
      ></span
      ><span
      >    </span
      ><span id=""
      ><span class="annot"
	><span class="annottext"
	  >y :: b
</span
	  ><a href="#"
	  ><span class="hs-identifier hs-var hs-var"
	    >y</span
	    ></a
	  ></span
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >=</span
      ><span
      > </span
      ><span class="hs-special"
      >(</span
      ><span class="annot"
      ><span class="annottext"
	>a -&gt; b
</span
	><a href="#"
	><span class="hs-identifier hs-var"
	  >f</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >::</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >a</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >-&gt;</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >b</span
	  ></a
	></span
      ><span class="hs-special"
      >)</span
      ><span
      > </span
      ><span class="annot"
      ><span class="annottext"
	>a
</span
	><a href="#"
	><span class="hs-identifier hs-var"
	  >x</span
	  ></a
	></span
      ><span
      > </span
      ><span class="hs-glyph"
      >::</span
      ><span
      > </span
      ><span class="annot"
      ><a href="#"
	><span class="hs-identifier hs-type"
	  >b</span
	  ></a
	></span
      ><span
      >
</span
      ><span id="line-67"
      ></span
      ></pre
    ></body
  ></html
>