diff --git a/Setup.hs b/Setup.hs
--- a/Setup.hs
+++ b/Setup.hs
@@ -1,3 +1,17 @@
 #!/usr/bin/env runhaskell
+
 import Distribution.Simple
-main = defaultMain
+import Distribution.Simple.Setup
+import Distribution.PackageDescription
+
+import Util.GenerateHtmlCombinators (generateHtmlCombinators)
+
+main :: IO ()
+main = defaultMainWithHooks hooks
+  where
+    hooks = simpleUserHooks { preConf = preConf' }
+
+    -- Simple hook that generates the code for the HTML combinators.
+    preConf' _ _ = do
+        generateHtmlCombinators
+        return emptyHookedBuildInfo
diff --git a/Text/Blaze.hs b/Text/Blaze.hs
new file mode 100644
--- /dev/null
+++ b/Text/Blaze.hs
@@ -0,0 +1,70 @@
+{-# LANGUAGE OverloadedStrings, GeneralizedNewtypeDeriving, Rank2Types,
+             FlexibleInstances #-}
+-- | BlazeHtml is an HTML combinator library. It provides a way to embed HTML in
+-- Haskell in an efficient and convenient way, with a light-weight syntax.
+--
+-- To use the library, one needs to import a set of HTML combinators. For
+-- example, you can use HTML 4 Strict.
+--
+-- > {-# LANGUAGE OverloadedStrings #-}
+-- > import Prelude hiding (head, id, div)
+-- > import Text.Blaze.Html4.Strict hiding (map)
+-- > import Text.Blaze.Html4.Strict.Attributes hiding (title)
+--
+-- To render the page later on, you need a so called Renderer. The recommended
+-- renderer is an UTF-8 renderer which produces a lazy bytestring.
+--
+-- > import Text.Blaze.Renderer.Utf8 (renderHtml)
+--
+-- Now, you can describe pages using the imported combinators.
+--
+-- > page1 :: Html
+-- > page1 = html $ do
+-- > 	head $ do
+-- > 		title "Introduction page."
+-- > 		link ! rel "stylesheet" ! type_ "text/css" ! href "screen.css"
+-- > 	body $ do
+-- > 		div ! id "header" $ "Syntax"
+-- > 		p "This is an example of BlazeHtml syntax."
+-- > 		ul $ forM_ [1, 2, 3] (li . string . show)
+--
+-- The resulting HTML can now be extracted using:
+--
+-- > renderHtml page1
+--
+module Text.Blaze
+    (
+      -- * Important types.
+      Html
+    , Tag
+    , Attribute
+    , AttributeValue
+
+      -- * Creating attributes.
+    , dataAttribute
+
+      -- * Converting values to HTML.
+    , text
+    , preEscapedText
+    , string
+    , preEscapedString
+    , showHtml
+    , preEscapedShowHtml
+    , unsafeByteString
+
+      -- * Creating tags.
+    , textTag
+    , stringTag
+
+      -- * Converting values to attribute values.
+    , textValue
+    , preEscapedTextValue
+    , stringValue
+    , preEscapedStringValue
+    , unsafeByteStringValue
+
+      -- * Setting attributes
+    , (!)
+    ) where
+
+import Text.Blaze.Internal
diff --git a/Text/Blaze/Html4/FrameSet.hs b/Text/Blaze/Html4/FrameSet.hs
new file mode 100644
--- /dev/null
+++ b/Text/Blaze/Html4/FrameSet.hs
@@ -0,0 +1,1464 @@
+-- WARNING: This code was automatically generated. You should *never*
+-- edit it directly. Instead, edit the files who generated this code,
+-- you can find them in the @util/@ directory.
+
+{-# LANGUAGE OverloadedStrings #-}                                              -- ./Util/GenerateHtmlCombinators.hs:78
+-- | This module exports HTML combinators used to create documents.
+--
+module Text.Blaze.Html4.FrameSet                                                -- ./Util/GenerateHtmlCombinators.hs:151
+    ( module Text.Blaze                                                         -- ./Util/GenerateHtmlCombinators.hs:152
+    , docType                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , docTypeHtml                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , a                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , abbr                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , acronym                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , address                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , applet                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , area                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , b                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , basefont                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , bdo                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , big                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , blockquote                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , body                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , br                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , button                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , caption                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , center                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , cite                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , code                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , col                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , colgroup                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , dd                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , del                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , dfn                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , dir                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , div                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , dl                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , dt                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , em                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , fieldset                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , font                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , form                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , frame                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , frameset                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , h1                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h2                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h3                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h4                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h5                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h6                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , head                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , hr                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , html                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , i                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , iframe                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , img                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , input                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , ins                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , isindex                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , kbd                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , label                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , legend                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , li                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , link                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , map                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , menu                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , meta                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , noframes                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , noscript                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , object                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , ol                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , optgroup                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , option                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , p                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , param                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , pre                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , q                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , s                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , samp                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , script                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , select                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , small                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , span                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , strong                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , style                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , sub                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , sup                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , table                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , tbody                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , td                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , textarea                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , tfoot                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , th                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , thead                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , title                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , tr                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , tt                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , u                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , ul                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , var                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    ) where                                                                     -- ./Util/GenerateHtmlCombinators.hs:155
+
+import Prelude ((>>), (.))                                                      -- ./Util/GenerateHtmlCombinators.hs:85
+                                                                                -- ./Util/GenerateHtmlCombinators.hs:86
+import Text.Blaze                                                               -- ./Util/GenerateHtmlCombinators.hs:87
+import Text.Blaze.Internal                                                      -- ./Util/GenerateHtmlCombinators.hs:88
+                                                                                -- ./Util/GenerateHtmlCombinators.hs:89
+-- | Combinator for the document type. This should be placed at the top
+-- of every HTML page.
+--
+-- Example:
+--
+-- > docType
+--
+-- Result:
+--
+-- > <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+-- >     "http://www.w3.org/TR/html4/frameset.dtd">
+--
+docType :: Html  -- ^ The document type HTML.                                   -- ./Util/GenerateHtmlCombinators.hs:171
+docType = preEscapedText "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Frameset//EN\"\n    \"http://www.w3.org/TR/html4/frameset.dtd\">\n" -- ./Util/GenerateHtmlCombinators.hs:172
+{-# INLINE docType #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:173
+
+-- | Combinator for the @\<html>@ element. This combinator will also
+-- insert the correct doctype.
+--
+-- Example:
+--
+-- > docTypeHtml $ span $ text "foo"
+--
+-- Result:
+--
+-- > <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+-- >     "http://www.w3.org/TR/html4/frameset.dtd">
+-- > <html><span>foo</span></html>
+--
+docTypeHtml :: Html  -- ^ Inner HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:192
+            -> Html  -- ^ Resulting HTML.                                       -- ./Util/GenerateHtmlCombinators.hs:193
+docTypeHtml inner = docType >> html inner                                       -- ./Util/GenerateHtmlCombinators.hs:194
+{-# INLINE docTypeHtml #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:195
+
+-- | Combinator for the @\<a>@ element.
+--
+-- Example:
+--
+-- > a $ span $ text "foo"
+--
+-- Result:
+--
+-- > <a><span>foo</span></a>
+--
+a :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+a = Parent "<a" "</a>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE a #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<abbr>@ element.
+--
+-- Example:
+--
+-- > abbr $ span $ text "foo"
+--
+-- Result:
+--
+-- > <abbr><span>foo</span></abbr>
+--
+abbr :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+abbr = Parent "<abbr" "</abbr>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE abbr #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<acronym>@ element.
+--
+-- Example:
+--
+-- > acronym $ span $ text "foo"
+--
+-- Result:
+--
+-- > <acronym><span>foo</span></acronym>
+--
+acronym :: Html  -- ^ Inner HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:212
+        -> Html  -- ^ Resulting HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:213
+acronym = Parent "<acronym" "</acronym>"                                        -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE acronym #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<address>@ element.
+--
+-- Example:
+--
+-- > address $ span $ text "foo"
+--
+-- Result:
+--
+-- > <address><span>foo</span></address>
+--
+address :: Html  -- ^ Inner HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:212
+        -> Html  -- ^ Resulting HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:213
+address = Parent "<address" "</address>"                                        -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE address #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<applet>@ element.
+--
+-- Example:
+--
+-- > applet $ span $ text "foo"
+--
+-- Result:
+--
+-- > <applet><span>foo</span></applet>
+--
+applet :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+applet = Parent "<applet" "</applet>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE applet #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<area />@ element.
+--
+-- Example:
+--
+-- > area
+--
+-- Result:
+--
+-- > <area />
+--
+area :: Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:238
+area = Leaf "<area" ">"                                                         -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE area #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<b>@ element.
+--
+-- Example:
+--
+-- > b $ span $ text "foo"
+--
+-- Result:
+--
+-- > <b><span>foo</span></b>
+--
+b :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+b = Parent "<b" "</b>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE b #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<basefont />@ element.
+--
+-- Example:
+--
+-- > basefont
+--
+-- Result:
+--
+-- > <basefont />
+--
+basefont :: Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:238
+basefont = Leaf "<basefont" ">"                                                 -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE basefont #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<bdo>@ element.
+--
+-- Example:
+--
+-- > bdo $ span $ text "foo"
+--
+-- Result:
+--
+-- > <bdo><span>foo</span></bdo>
+--
+bdo :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+bdo = Parent "<bdo" "</bdo>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE bdo #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<big>@ element.
+--
+-- Example:
+--
+-- > big $ span $ text "foo"
+--
+-- Result:
+--
+-- > <big><span>foo</span></big>
+--
+big :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+big = Parent "<big" "</big>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE big #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<blockquote>@ element.
+--
+-- Example:
+--
+-- > blockquote $ span $ text "foo"
+--
+-- Result:
+--
+-- > <blockquote><span>foo</span></blockquote>
+--
+blockquote :: Html  -- ^ Inner HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:212
+           -> Html  -- ^ Resulting HTML.                                        -- ./Util/GenerateHtmlCombinators.hs:213
+blockquote = Parent "<blockquote" "</blockquote>"                               -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE blockquote #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<body>@ element.
+--
+-- Example:
+--
+-- > body $ span $ text "foo"
+--
+-- Result:
+--
+-- > <body><span>foo</span></body>
+--
+body :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+body = Parent "<body" "</body>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE body #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<br />@ element.
+--
+-- Example:
+--
+-- > br
+--
+-- Result:
+--
+-- > <br />
+--
+br :: Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:238
+br = Leaf "<br" ">"                                                             -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE br #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<button>@ element.
+--
+-- Example:
+--
+-- > button $ span $ text "foo"
+--
+-- Result:
+--
+-- > <button><span>foo</span></button>
+--
+button :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+button = Parent "<button" "</button>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE button #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<caption>@ element.
+--
+-- Example:
+--
+-- > caption $ span $ text "foo"
+--
+-- Result:
+--
+-- > <caption><span>foo</span></caption>
+--
+caption :: Html  -- ^ Inner HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:212
+        -> Html  -- ^ Resulting HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:213
+caption = Parent "<caption" "</caption>"                                        -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE caption #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<center>@ element.
+--
+-- Example:
+--
+-- > center $ span $ text "foo"
+--
+-- Result:
+--
+-- > <center><span>foo</span></center>
+--
+center :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+center = Parent "<center" "</center>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE center #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<cite>@ element.
+--
+-- Example:
+--
+-- > cite $ span $ text "foo"
+--
+-- Result:
+--
+-- > <cite><span>foo</span></cite>
+--
+cite :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+cite = Parent "<cite" "</cite>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE cite #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<code>@ element.
+--
+-- Example:
+--
+-- > code $ span $ text "foo"
+--
+-- Result:
+--
+-- > <code><span>foo</span></code>
+--
+code :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+code = Parent "<code" "</code>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE code #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<col />@ element.
+--
+-- Example:
+--
+-- > col
+--
+-- Result:
+--
+-- > <col />
+--
+col :: Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:238
+col = Leaf "<col" ">"                                                           -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE col #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<colgroup>@ element.
+--
+-- Example:
+--
+-- > colgroup $ span $ text "foo"
+--
+-- Result:
+--
+-- > <colgroup><span>foo</span></colgroup>
+--
+colgroup :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+colgroup = Parent "<colgroup" "</colgroup>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE colgroup #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<dd>@ element.
+--
+-- Example:
+--
+-- > dd $ span $ text "foo"
+--
+-- Result:
+--
+-- > <dd><span>foo</span></dd>
+--
+dd :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+dd = Parent "<dd" "</dd>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE dd #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<del>@ element.
+--
+-- Example:
+--
+-- > del $ span $ text "foo"
+--
+-- Result:
+--
+-- > <del><span>foo</span></del>
+--
+del :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+del = Parent "<del" "</del>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE del #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<dfn>@ element.
+--
+-- Example:
+--
+-- > dfn $ span $ text "foo"
+--
+-- Result:
+--
+-- > <dfn><span>foo</span></dfn>
+--
+dfn :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+dfn = Parent "<dfn" "</dfn>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE dfn #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<dir>@ element.
+--
+-- Example:
+--
+-- > dir $ span $ text "foo"
+--
+-- Result:
+--
+-- > <dir><span>foo</span></dir>
+--
+dir :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+dir = Parent "<dir" "</dir>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE dir #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<div>@ element.
+--
+-- Example:
+--
+-- > div $ span $ text "foo"
+--
+-- Result:
+--
+-- > <div><span>foo</span></div>
+--
+div :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+div = Parent "<div" "</div>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE div #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<dl>@ element.
+--
+-- Example:
+--
+-- > dl $ span $ text "foo"
+--
+-- Result:
+--
+-- > <dl><span>foo</span></dl>
+--
+dl :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+dl = Parent "<dl" "</dl>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE dl #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<dt>@ element.
+--
+-- Example:
+--
+-- > dt $ span $ text "foo"
+--
+-- Result:
+--
+-- > <dt><span>foo</span></dt>
+--
+dt :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+dt = Parent "<dt" "</dt>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE dt #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<em>@ element.
+--
+-- Example:
+--
+-- > em $ span $ text "foo"
+--
+-- Result:
+--
+-- > <em><span>foo</span></em>
+--
+em :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+em = Parent "<em" "</em>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE em #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<fieldset>@ element.
+--
+-- Example:
+--
+-- > fieldset $ span $ text "foo"
+--
+-- Result:
+--
+-- > <fieldset><span>foo</span></fieldset>
+--
+fieldset :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+fieldset = Parent "<fieldset" "</fieldset>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE fieldset #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<font>@ element.
+--
+-- Example:
+--
+-- > font $ span $ text "foo"
+--
+-- Result:
+--
+-- > <font><span>foo</span></font>
+--
+font :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+font = Parent "<font" "</font>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE font #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<form>@ element.
+--
+-- Example:
+--
+-- > form $ span $ text "foo"
+--
+-- Result:
+--
+-- > <form><span>foo</span></form>
+--
+form :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+form = Parent "<form" "</form>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE form #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<frame />@ element.
+--
+-- Example:
+--
+-- > frame
+--
+-- Result:
+--
+-- > <frame />
+--
+frame :: Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:238
+frame = Leaf "<frame" ">"                                                       -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE frame #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<frameset>@ element.
+--
+-- Example:
+--
+-- > frameset $ span $ text "foo"
+--
+-- Result:
+--
+-- > <frameset><span>foo</span></frameset>
+--
+frameset :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+frameset = Parent "<frameset" "</frameset>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE frameset #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h1>@ element.
+--
+-- Example:
+--
+-- > h1 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h1><span>foo</span></h1>
+--
+h1 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h1 = Parent "<h1" "</h1>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h1 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h2>@ element.
+--
+-- Example:
+--
+-- > h2 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h2><span>foo</span></h2>
+--
+h2 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h2 = Parent "<h2" "</h2>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h2 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h3>@ element.
+--
+-- Example:
+--
+-- > h3 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h3><span>foo</span></h3>
+--
+h3 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h3 = Parent "<h3" "</h3>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h3 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h4>@ element.
+--
+-- Example:
+--
+-- > h4 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h4><span>foo</span></h4>
+--
+h4 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h4 = Parent "<h4" "</h4>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h4 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h5>@ element.
+--
+-- Example:
+--
+-- > h5 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h5><span>foo</span></h5>
+--
+h5 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h5 = Parent "<h5" "</h5>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h5 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h6>@ element.
+--
+-- Example:
+--
+-- > h6 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h6><span>foo</span></h6>
+--
+h6 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h6 = Parent "<h6" "</h6>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h6 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<head>@ element.
+--
+-- Example:
+--
+-- > head $ span $ text "foo"
+--
+-- Result:
+--
+-- > <head><span>foo</span></head>
+--
+head :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+head = Parent "<head" "</head>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE head #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<hr />@ element.
+--
+-- Example:
+--
+-- > hr
+--
+-- Result:
+--
+-- > <hr />
+--
+hr :: Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:238
+hr = Leaf "<hr" ">"                                                             -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE hr #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<html>@ element.
+--
+-- Example:
+--
+-- > html $ span $ text "foo"
+--
+-- Result:
+--
+-- > <html><span>foo</span></html>
+--
+html :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+html = Parent "<html" "</html>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE html #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<i>@ element.
+--
+-- Example:
+--
+-- > i $ span $ text "foo"
+--
+-- Result:
+--
+-- > <i><span>foo</span></i>
+--
+i :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+i = Parent "<i" "</i>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE i #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<iframe>@ element.
+--
+-- Example:
+--
+-- > iframe $ span $ text "foo"
+--
+-- Result:
+--
+-- > <iframe><span>foo</span></iframe>
+--
+iframe :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+iframe = Parent "<iframe" "</iframe>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE iframe #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<img />@ element.
+--
+-- Example:
+--
+-- > img
+--
+-- Result:
+--
+-- > <img />
+--
+img :: Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:238
+img = Leaf "<img" ">"                                                           -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE img #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<input />@ element.
+--
+-- Example:
+--
+-- > input
+--
+-- Result:
+--
+-- > <input />
+--
+input :: Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:238
+input = Leaf "<input" ">"                                                       -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE input #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<ins>@ element.
+--
+-- Example:
+--
+-- > ins $ span $ text "foo"
+--
+-- Result:
+--
+-- > <ins><span>foo</span></ins>
+--
+ins :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+ins = Parent "<ins" "</ins>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE ins #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<isindex>@ element.
+--
+-- Example:
+--
+-- > isindex $ span $ text "foo"
+--
+-- Result:
+--
+-- > <isindex><span>foo</span></isindex>
+--
+isindex :: Html  -- ^ Inner HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:212
+        -> Html  -- ^ Resulting HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:213
+isindex = Parent "<isindex" "</isindex>"                                        -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE isindex #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<kbd>@ element.
+--
+-- Example:
+--
+-- > kbd $ span $ text "foo"
+--
+-- Result:
+--
+-- > <kbd><span>foo</span></kbd>
+--
+kbd :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+kbd = Parent "<kbd" "</kbd>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE kbd #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<label>@ element.
+--
+-- Example:
+--
+-- > label $ span $ text "foo"
+--
+-- Result:
+--
+-- > <label><span>foo</span></label>
+--
+label :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+label = Parent "<label" "</label>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE label #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<legend>@ element.
+--
+-- Example:
+--
+-- > legend $ span $ text "foo"
+--
+-- Result:
+--
+-- > <legend><span>foo</span></legend>
+--
+legend :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+legend = Parent "<legend" "</legend>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE legend #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<li>@ element.
+--
+-- Example:
+--
+-- > li $ span $ text "foo"
+--
+-- Result:
+--
+-- > <li><span>foo</span></li>
+--
+li :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+li = Parent "<li" "</li>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE li #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<link />@ element.
+--
+-- Example:
+--
+-- > link
+--
+-- Result:
+--
+-- > <link />
+--
+link :: Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:238
+link = Leaf "<link" ">"                                                         -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE link #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<map>@ element.
+--
+-- Example:
+--
+-- > map $ span $ text "foo"
+--
+-- Result:
+--
+-- > <map><span>foo</span></map>
+--
+map :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+map = Parent "<map" "</map>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE map #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<menu>@ element.
+--
+-- Example:
+--
+-- > menu $ span $ text "foo"
+--
+-- Result:
+--
+-- > <menu><span>foo</span></menu>
+--
+menu :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+menu = Parent "<menu" "</menu>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE menu #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<meta />@ element.
+--
+-- Example:
+--
+-- > meta
+--
+-- Result:
+--
+-- > <meta />
+--
+meta :: Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:238
+meta = Leaf "<meta" ">"                                                         -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE meta #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<noframes>@ element.
+--
+-- Example:
+--
+-- > noframes $ span $ text "foo"
+--
+-- Result:
+--
+-- > <noframes><span>foo</span></noframes>
+--
+noframes :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+noframes = Parent "<noframes" "</noframes>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE noframes #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<noscript>@ element.
+--
+-- Example:
+--
+-- > noscript $ span $ text "foo"
+--
+-- Result:
+--
+-- > <noscript><span>foo</span></noscript>
+--
+noscript :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+noscript = Parent "<noscript" "</noscript>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE noscript #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<object>@ element.
+--
+-- Example:
+--
+-- > object $ span $ text "foo"
+--
+-- Result:
+--
+-- > <object><span>foo</span></object>
+--
+object :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+object = Parent "<object" "</object>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE object #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<ol>@ element.
+--
+-- Example:
+--
+-- > ol $ span $ text "foo"
+--
+-- Result:
+--
+-- > <ol><span>foo</span></ol>
+--
+ol :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+ol = Parent "<ol" "</ol>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE ol #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<optgroup>@ element.
+--
+-- Example:
+--
+-- > optgroup $ span $ text "foo"
+--
+-- Result:
+--
+-- > <optgroup><span>foo</span></optgroup>
+--
+optgroup :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+optgroup = Parent "<optgroup" "</optgroup>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE optgroup #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<option>@ element.
+--
+-- Example:
+--
+-- > option $ span $ text "foo"
+--
+-- Result:
+--
+-- > <option><span>foo</span></option>
+--
+option :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+option = Parent "<option" "</option>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE option #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<p>@ element.
+--
+-- Example:
+--
+-- > p $ span $ text "foo"
+--
+-- Result:
+--
+-- > <p><span>foo</span></p>
+--
+p :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+p = Parent "<p" "</p>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE p #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<param />@ element.
+--
+-- Example:
+--
+-- > param
+--
+-- Result:
+--
+-- > <param />
+--
+param :: Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:238
+param = Leaf "<param" ">"                                                       -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE param #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<pre>@ element.
+--
+-- Example:
+--
+-- > pre $ span $ text "foo"
+--
+-- Result:
+--
+-- > <pre><span>foo</span></pre>
+--
+pre :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+pre = Parent "<pre" "</pre>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE pre #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<q>@ element.
+--
+-- Example:
+--
+-- > q $ span $ text "foo"
+--
+-- Result:
+--
+-- > <q><span>foo</span></q>
+--
+q :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+q = Parent "<q" "</q>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE q #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<s>@ element.
+--
+-- Example:
+--
+-- > s $ span $ text "foo"
+--
+-- Result:
+--
+-- > <s><span>foo</span></s>
+--
+s :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+s = Parent "<s" "</s>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE s #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<samp>@ element.
+--
+-- Example:
+--
+-- > samp $ span $ text "foo"
+--
+-- Result:
+--
+-- > <samp><span>foo</span></samp>
+--
+samp :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+samp = Parent "<samp" "</samp>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE samp #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<script>@ element.
+--
+-- Example:
+--
+-- > script $ span $ text "foo"
+--
+-- Result:
+--
+-- > <script><span>foo</span></script>
+--
+script :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+script = Parent "<script" "</script>" . external                                -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE script #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<select>@ element.
+--
+-- Example:
+--
+-- > select $ span $ text "foo"
+--
+-- Result:
+--
+-- > <select><span>foo</span></select>
+--
+select :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+select = Parent "<select" "</select>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE select #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<small>@ element.
+--
+-- Example:
+--
+-- > small $ span $ text "foo"
+--
+-- Result:
+--
+-- > <small><span>foo</span></small>
+--
+small :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+small = Parent "<small" "</small>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE small #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<span>@ element.
+--
+-- Example:
+--
+-- > span $ span $ text "foo"
+--
+-- Result:
+--
+-- > <span><span>foo</span></span>
+--
+span :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+span = Parent "<span" "</span>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE span #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<strong>@ element.
+--
+-- Example:
+--
+-- > strong $ span $ text "foo"
+--
+-- Result:
+--
+-- > <strong><span>foo</span></strong>
+--
+strong :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+strong = Parent "<strong" "</strong>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE strong #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<style>@ element.
+--
+-- Example:
+--
+-- > style $ span $ text "foo"
+--
+-- Result:
+--
+-- > <style><span>foo</span></style>
+--
+style :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+style = Parent "<style" "</style>" . external                                   -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE style #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<sub>@ element.
+--
+-- Example:
+--
+-- > sub $ span $ text "foo"
+--
+-- Result:
+--
+-- > <sub><span>foo</span></sub>
+--
+sub :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+sub = Parent "<sub" "</sub>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE sub #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<sup>@ element.
+--
+-- Example:
+--
+-- > sup $ span $ text "foo"
+--
+-- Result:
+--
+-- > <sup><span>foo</span></sup>
+--
+sup :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+sup = Parent "<sup" "</sup>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE sup #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<table>@ element.
+--
+-- Example:
+--
+-- > table $ span $ text "foo"
+--
+-- Result:
+--
+-- > <table><span>foo</span></table>
+--
+table :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+table = Parent "<table" "</table>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE table #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<tbody>@ element.
+--
+-- Example:
+--
+-- > tbody $ span $ text "foo"
+--
+-- Result:
+--
+-- > <tbody><span>foo</span></tbody>
+--
+tbody :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+tbody = Parent "<tbody" "</tbody>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE tbody #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<td>@ element.
+--
+-- Example:
+--
+-- > td $ span $ text "foo"
+--
+-- Result:
+--
+-- > <td><span>foo</span></td>
+--
+td :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+td = Parent "<td" "</td>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE td #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<textarea>@ element.
+--
+-- Example:
+--
+-- > textarea $ span $ text "foo"
+--
+-- Result:
+--
+-- > <textarea><span>foo</span></textarea>
+--
+textarea :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+textarea = Parent "<textarea" "</textarea>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE textarea #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<tfoot>@ element.
+--
+-- Example:
+--
+-- > tfoot $ span $ text "foo"
+--
+-- Result:
+--
+-- > <tfoot><span>foo</span></tfoot>
+--
+tfoot :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+tfoot = Parent "<tfoot" "</tfoot>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE tfoot #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<th>@ element.
+--
+-- Example:
+--
+-- > th $ span $ text "foo"
+--
+-- Result:
+--
+-- > <th><span>foo</span></th>
+--
+th :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+th = Parent "<th" "</th>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE th #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<thead>@ element.
+--
+-- Example:
+--
+-- > thead $ span $ text "foo"
+--
+-- Result:
+--
+-- > <thead><span>foo</span></thead>
+--
+thead :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+thead = Parent "<thead" "</thead>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE thead #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<title>@ element.
+--
+-- Example:
+--
+-- > title $ span $ text "foo"
+--
+-- Result:
+--
+-- > <title><span>foo</span></title>
+--
+title :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+title = Parent "<title" "</title>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE title #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<tr>@ element.
+--
+-- Example:
+--
+-- > tr $ span $ text "foo"
+--
+-- Result:
+--
+-- > <tr><span>foo</span></tr>
+--
+tr :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+tr = Parent "<tr" "</tr>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE tr #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<tt>@ element.
+--
+-- Example:
+--
+-- > tt $ span $ text "foo"
+--
+-- Result:
+--
+-- > <tt><span>foo</span></tt>
+--
+tt :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+tt = Parent "<tt" "</tt>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE tt #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<u>@ element.
+--
+-- Example:
+--
+-- > u $ span $ text "foo"
+--
+-- Result:
+--
+-- > <u><span>foo</span></u>
+--
+u :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+u = Parent "<u" "</u>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE u #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<ul>@ element.
+--
+-- Example:
+--
+-- > ul $ span $ text "foo"
+--
+-- Result:
+--
+-- > <ul><span>foo</span></ul>
+--
+ul :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+ul = Parent "<ul" "</ul>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE ul #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<var>@ element.
+--
+-- Example:
+--
+-- > var $ span $ text "foo"
+--
+-- Result:
+--
+-- > <var><span>foo</span></var>
+--
+var :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+var = Parent "<var" "</var>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE var #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
diff --git a/Text/Blaze/Html4/FrameSet/Attributes.hs b/Text/Blaze/Html4/FrameSet/Attributes.hs
new file mode 100644
--- /dev/null
+++ b/Text/Blaze/Html4/FrameSet/Attributes.hs
@@ -0,0 +1,1678 @@
+-- WARNING: This code was automatically generated. You should *never*
+-- edit it directly. Instead, edit the files who generated this code,
+-- you can find them in the @util/@ directory.
+
+-- | This module exports combinators that provide you with the
+-- ability to set attributes on HTML elements.
+--
+{-# LANGUAGE OverloadedStrings #-}                                              -- ./Util/GenerateHtmlCombinators.hs:103
+module Text.Blaze.Html4.FrameSet.Attributes                                     -- ./Util/GenerateHtmlCombinators.hs:151
+    ( abbr                                                                      -- ./Util/GenerateHtmlCombinators.hs:152
+    , accept                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , accesskey                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , action                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , align                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , alt                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , archive                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , axis                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , background                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , bgcolor                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , border                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , cellpadding                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , cellspacing                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , char                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , charoff                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , charset                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , checked                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , cite                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , class_                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , classid                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , clear                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , codebase                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , codetype                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , cols                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , colspan                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , compact                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , content                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , coords                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , data_                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , datetime                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , declare                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , defer                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , dir                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , disabled                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , enctype                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , for                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , frame                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , frameborder                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , headers                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , height                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , href                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , hreflang                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , hspace                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , http_equiv                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , id                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , label                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , lang                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , language                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , maxlength                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , media                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , method                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , multiple                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , name                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , nohref                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , noshade                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , nowrap                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , onabort                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , onblur                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , onchange                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , onclick                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , ondblclick                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , onfocus                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , onkeydown                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , onkeypress                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , onkeyup                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , onload                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmousedown                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmousemove                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmouseout                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmouseover                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmouseup                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , onreset                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , onselect                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , onsubmit                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , onunload                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , profile                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , readonly                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , rel                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , rev                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , rows                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , rowspan                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , rules                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , scheme                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , scope                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , scrolling                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , selected                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , shape                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , size                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , span                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , src                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , standby                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , start                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , style                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , summary                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , tabindex                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , target                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , title                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , type_                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , usemap                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , valign                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , value                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , valuetype                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , vspace                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , width                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    ) where                                                                     -- ./Util/GenerateHtmlCombinators.hs:155
+
+import Prelude ()                                                               -- ./Util/GenerateHtmlCombinators.hs:105
+                                                                                -- ./Util/GenerateHtmlCombinators.hs:106
+import Text.Blaze.Internal (Attribute, AttributeValue, attribute)               -- ./Util/GenerateHtmlCombinators.hs:107
+                                                                                -- ./Util/GenerateHtmlCombinators.hs:108
+-- | Combinator for the @abbr@ attribute.
+--
+-- Example:
+--
+-- > div ! abbr "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div abbr="bar">Hello.</div>
+--
+abbr :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+abbr = attribute " abbr=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE abbr #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @accept@ attribute.
+--
+-- Example:
+--
+-- > div ! accept "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div accept="bar">Hello.</div>
+--
+accept :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+accept = attribute " accept=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE accept #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @accesskey@ attribute.
+--
+-- Example:
+--
+-- > div ! accesskey "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div accesskey="bar">Hello.</div>
+--
+accesskey :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+accesskey = attribute " accesskey=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE accesskey #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @action@ attribute.
+--
+-- Example:
+--
+-- > div ! action "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div action="bar">Hello.</div>
+--
+action :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+action = attribute " action=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE action #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @align@ attribute.
+--
+-- Example:
+--
+-- > div ! align "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div align="bar">Hello.</div>
+--
+align :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+align = attribute " align=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE align #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @alt@ attribute.
+--
+-- Example:
+--
+-- > div ! alt "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div alt="bar">Hello.</div>
+--
+alt :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+alt = attribute " alt=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE alt #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @archive@ attribute.
+--
+-- Example:
+--
+-- > div ! archive "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div archive="bar">Hello.</div>
+--
+archive :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+archive = attribute " archive=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE archive #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @axis@ attribute.
+--
+-- Example:
+--
+-- > div ! axis "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div axis="bar">Hello.</div>
+--
+axis :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+axis = attribute " axis=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE axis #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @background@ attribute.
+--
+-- Example:
+--
+-- > div ! background "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div background="bar">Hello.</div>
+--
+background :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+background = attribute " background=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE background #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @bgcolor@ attribute.
+--
+-- Example:
+--
+-- > div ! bgcolor "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div bgcolor="bar">Hello.</div>
+--
+bgcolor :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+bgcolor = attribute " bgcolor=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE bgcolor #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @border@ attribute.
+--
+-- Example:
+--
+-- > div ! border "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div border="bar">Hello.</div>
+--
+border :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+border = attribute " border=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE border #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @cellpadding@ attribute.
+--
+-- Example:
+--
+-- > div ! cellpadding "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div cellpadding="bar">Hello.</div>
+--
+cellpadding :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+cellpadding = attribute " cellpadding=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE cellpadding #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @cellspacing@ attribute.
+--
+-- Example:
+--
+-- > div ! cellspacing "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div cellspacing="bar">Hello.</div>
+--
+cellspacing :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+cellspacing = attribute " cellspacing=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE cellspacing #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @char@ attribute.
+--
+-- Example:
+--
+-- > div ! char "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div char="bar">Hello.</div>
+--
+char :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+char = attribute " char=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE char #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @charoff@ attribute.
+--
+-- Example:
+--
+-- > div ! charoff "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div charoff="bar">Hello.</div>
+--
+charoff :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+charoff = attribute " charoff=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE charoff #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @charset@ attribute.
+--
+-- Example:
+--
+-- > div ! charset "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div charset="bar">Hello.</div>
+--
+charset :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+charset = attribute " charset=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE charset #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @checked@ attribute.
+--
+-- Example:
+--
+-- > div ! checked "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div checked="bar">Hello.</div>
+--
+checked :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+checked = attribute " checked=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE checked #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @cite@ attribute.
+--
+-- Example:
+--
+-- > div ! cite "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div cite="bar">Hello.</div>
+--
+cite :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+cite = attribute " cite=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE cite #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @class@ attribute.
+--
+-- Example:
+--
+-- > div ! class_ "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div class="bar">Hello.</div>
+--
+class_ :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+class_ = attribute " class=\""                                                  -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE class_ #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @classid@ attribute.
+--
+-- Example:
+--
+-- > div ! classid "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div classid="bar">Hello.</div>
+--
+classid :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+classid = attribute " classid=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE classid #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @clear@ attribute.
+--
+-- Example:
+--
+-- > div ! clear "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div clear="bar">Hello.</div>
+--
+clear :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+clear = attribute " clear=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE clear #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @codebase@ attribute.
+--
+-- Example:
+--
+-- > div ! codebase "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div codebase="bar">Hello.</div>
+--
+codebase :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+codebase = attribute " codebase=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE codebase #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @codetype@ attribute.
+--
+-- Example:
+--
+-- > div ! codetype "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div codetype="bar">Hello.</div>
+--
+codetype :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+codetype = attribute " codetype=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE codetype #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @cols@ attribute.
+--
+-- Example:
+--
+-- > div ! cols "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div cols="bar">Hello.</div>
+--
+cols :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+cols = attribute " cols=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE cols #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @colspan@ attribute.
+--
+-- Example:
+--
+-- > div ! colspan "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div colspan="bar">Hello.</div>
+--
+colspan :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+colspan = attribute " colspan=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE colspan #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @compact@ attribute.
+--
+-- Example:
+--
+-- > div ! compact "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div compact="bar">Hello.</div>
+--
+compact :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+compact = attribute " compact=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE compact #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @content@ attribute.
+--
+-- Example:
+--
+-- > div ! content "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div content="bar">Hello.</div>
+--
+content :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+content = attribute " content=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE content #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @coords@ attribute.
+--
+-- Example:
+--
+-- > div ! coords "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div coords="bar">Hello.</div>
+--
+coords :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+coords = attribute " coords=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE coords #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @data@ attribute.
+--
+-- Example:
+--
+-- > div ! data_ "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div data="bar">Hello.</div>
+--
+data_ :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+data_ = attribute " data=\""                                                    -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE data_ #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @datetime@ attribute.
+--
+-- Example:
+--
+-- > div ! datetime "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div datetime="bar">Hello.</div>
+--
+datetime :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+datetime = attribute " datetime=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE datetime #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @declare@ attribute.
+--
+-- Example:
+--
+-- > div ! declare "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div declare="bar">Hello.</div>
+--
+declare :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+declare = attribute " declare=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE declare #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @defer@ attribute.
+--
+-- Example:
+--
+-- > div ! defer "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div defer="bar">Hello.</div>
+--
+defer :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+defer = attribute " defer=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE defer #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @dir@ attribute.
+--
+-- Example:
+--
+-- > div ! dir "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div dir="bar">Hello.</div>
+--
+dir :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+dir = attribute " dir=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE dir #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @disabled@ attribute.
+--
+-- Example:
+--
+-- > div ! disabled "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div disabled="bar">Hello.</div>
+--
+disabled :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+disabled = attribute " disabled=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE disabled #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @enctype@ attribute.
+--
+-- Example:
+--
+-- > div ! enctype "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div enctype="bar">Hello.</div>
+--
+enctype :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+enctype = attribute " enctype=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE enctype #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @for@ attribute.
+--
+-- Example:
+--
+-- > div ! for "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div for="bar">Hello.</div>
+--
+for :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+for = attribute " for=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE for #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @frame@ attribute.
+--
+-- Example:
+--
+-- > div ! frame "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div frame="bar">Hello.</div>
+--
+frame :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+frame = attribute " frame=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE frame #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @frameborder@ attribute.
+--
+-- Example:
+--
+-- > div ! frameborder "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div frameborder="bar">Hello.</div>
+--
+frameborder :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+frameborder = attribute " frameborder=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE frameborder #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @headers@ attribute.
+--
+-- Example:
+--
+-- > div ! headers "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div headers="bar">Hello.</div>
+--
+headers :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+headers = attribute " headers=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE headers #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @height@ attribute.
+--
+-- Example:
+--
+-- > div ! height "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div height="bar">Hello.</div>
+--
+height :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+height = attribute " height=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE height #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @href@ attribute.
+--
+-- Example:
+--
+-- > div ! href "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div href="bar">Hello.</div>
+--
+href :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+href = attribute " href=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE href #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @hreflang@ attribute.
+--
+-- Example:
+--
+-- > div ! hreflang "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div hreflang="bar">Hello.</div>
+--
+hreflang :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+hreflang = attribute " hreflang=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE hreflang #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @hspace@ attribute.
+--
+-- Example:
+--
+-- > div ! hspace "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div hspace="bar">Hello.</div>
+--
+hspace :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+hspace = attribute " hspace=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE hspace #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @http-equiv@ attribute.
+--
+-- Example:
+--
+-- > div ! http_equiv "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div http-equiv="bar">Hello.</div>
+--
+http_equiv :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+http_equiv = attribute " http-equiv=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE http_equiv #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @id@ attribute.
+--
+-- Example:
+--
+-- > div ! id "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div id="bar">Hello.</div>
+--
+id :: AttributeValue  -- ^ Attribute value.                                     -- ./Util/GenerateHtmlCombinators.hs:260
+   -> Attribute       -- ^ Resulting attribute.                                 -- ./Util/GenerateHtmlCombinators.hs:261
+id = attribute " id=\""                                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE id #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @label@ attribute.
+--
+-- Example:
+--
+-- > div ! label "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div label="bar">Hello.</div>
+--
+label :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+label = attribute " label=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE label #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @lang@ attribute.
+--
+-- Example:
+--
+-- > div ! lang "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div lang="bar">Hello.</div>
+--
+lang :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+lang = attribute " lang=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE lang #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @language@ attribute.
+--
+-- Example:
+--
+-- > div ! language "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div language="bar">Hello.</div>
+--
+language :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+language = attribute " language=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE language #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @maxlength@ attribute.
+--
+-- Example:
+--
+-- > div ! maxlength "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div maxlength="bar">Hello.</div>
+--
+maxlength :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+maxlength = attribute " maxlength=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE maxlength #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @media@ attribute.
+--
+-- Example:
+--
+-- > div ! media "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div media="bar">Hello.</div>
+--
+media :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+media = attribute " media=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE media #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @method@ attribute.
+--
+-- Example:
+--
+-- > div ! method "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div method="bar">Hello.</div>
+--
+method :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+method = attribute " method=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE method #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @multiple@ attribute.
+--
+-- Example:
+--
+-- > div ! multiple "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div multiple="bar">Hello.</div>
+--
+multiple :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+multiple = attribute " multiple=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE multiple #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @name@ attribute.
+--
+-- Example:
+--
+-- > div ! name "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div name="bar">Hello.</div>
+--
+name :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+name = attribute " name=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE name #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @nohref@ attribute.
+--
+-- Example:
+--
+-- > div ! nohref "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div nohref="bar">Hello.</div>
+--
+nohref :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+nohref = attribute " nohref=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE nohref #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @noshade@ attribute.
+--
+-- Example:
+--
+-- > div ! noshade "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div noshade="bar">Hello.</div>
+--
+noshade :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+noshade = attribute " noshade=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE noshade #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @nowrap@ attribute.
+--
+-- Example:
+--
+-- > div ! nowrap "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div nowrap="bar">Hello.</div>
+--
+nowrap :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+nowrap = attribute " nowrap=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE nowrap #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onabort@ attribute.
+--
+-- Example:
+--
+-- > div ! onabort "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onabort="bar">Hello.</div>
+--
+onabort :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onabort = attribute " onabort=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onabort #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onblur@ attribute.
+--
+-- Example:
+--
+-- > div ! onblur "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onblur="bar">Hello.</div>
+--
+onblur :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+onblur = attribute " onblur=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onblur #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onchange@ attribute.
+--
+-- Example:
+--
+-- > div ! onchange "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onchange="bar">Hello.</div>
+--
+onchange :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onchange = attribute " onchange=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onchange #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onclick@ attribute.
+--
+-- Example:
+--
+-- > div ! onclick "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onclick="bar">Hello.</div>
+--
+onclick :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onclick = attribute " onclick=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onclick #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @ondblclick@ attribute.
+--
+-- Example:
+--
+-- > div ! ondblclick "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div ondblclick="bar">Hello.</div>
+--
+ondblclick :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+ondblclick = attribute " ondblclick=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE ondblclick #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onfocus@ attribute.
+--
+-- Example:
+--
+-- > div ! onfocus "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onfocus="bar">Hello.</div>
+--
+onfocus :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onfocus = attribute " onfocus=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onfocus #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onkeydown@ attribute.
+--
+-- Example:
+--
+-- > div ! onkeydown "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onkeydown="bar">Hello.</div>
+--
+onkeydown :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+onkeydown = attribute " onkeydown=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onkeydown #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onkeypress@ attribute.
+--
+-- Example:
+--
+-- > div ! onkeypress "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onkeypress="bar">Hello.</div>
+--
+onkeypress :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+onkeypress = attribute " onkeypress=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onkeypress #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onkeyup@ attribute.
+--
+-- Example:
+--
+-- > div ! onkeyup "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onkeyup="bar">Hello.</div>
+--
+onkeyup :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onkeyup = attribute " onkeyup=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onkeyup #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onload@ attribute.
+--
+-- Example:
+--
+-- > div ! onload "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onload="bar">Hello.</div>
+--
+onload :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+onload = attribute " onload=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onload #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmousedown@ attribute.
+--
+-- Example:
+--
+-- > div ! onmousedown "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmousedown="bar">Hello.</div>
+--
+onmousedown :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+onmousedown = attribute " onmousedown=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmousedown #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmousemove@ attribute.
+--
+-- Example:
+--
+-- > div ! onmousemove "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmousemove="bar">Hello.</div>
+--
+onmousemove :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+onmousemove = attribute " onmousemove=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmousemove #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmouseout@ attribute.
+--
+-- Example:
+--
+-- > div ! onmouseout "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmouseout="bar">Hello.</div>
+--
+onmouseout :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+onmouseout = attribute " onmouseout=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmouseout #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmouseover@ attribute.
+--
+-- Example:
+--
+-- > div ! onmouseover "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmouseover="bar">Hello.</div>
+--
+onmouseover :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+onmouseover = attribute " onmouseover=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmouseover #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmouseup@ attribute.
+--
+-- Example:
+--
+-- > div ! onmouseup "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmouseup="bar">Hello.</div>
+--
+onmouseup :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+onmouseup = attribute " onmouseup=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmouseup #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onreset@ attribute.
+--
+-- Example:
+--
+-- > div ! onreset "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onreset="bar">Hello.</div>
+--
+onreset :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onreset = attribute " onreset=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onreset #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onselect@ attribute.
+--
+-- Example:
+--
+-- > div ! onselect "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onselect="bar">Hello.</div>
+--
+onselect :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onselect = attribute " onselect=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onselect #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onsubmit@ attribute.
+--
+-- Example:
+--
+-- > div ! onsubmit "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onsubmit="bar">Hello.</div>
+--
+onsubmit :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onsubmit = attribute " onsubmit=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onsubmit #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onunload@ attribute.
+--
+-- Example:
+--
+-- > div ! onunload "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onunload="bar">Hello.</div>
+--
+onunload :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onunload = attribute " onunload=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onunload #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @profile@ attribute.
+--
+-- Example:
+--
+-- > div ! profile "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div profile="bar">Hello.</div>
+--
+profile :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+profile = attribute " profile=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE profile #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @readonly@ attribute.
+--
+-- Example:
+--
+-- > div ! readonly "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div readonly="bar">Hello.</div>
+--
+readonly :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+readonly = attribute " readonly=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE readonly #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @rel@ attribute.
+--
+-- Example:
+--
+-- > div ! rel "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div rel="bar">Hello.</div>
+--
+rel :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+rel = attribute " rel=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE rel #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @rev@ attribute.
+--
+-- Example:
+--
+-- > div ! rev "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div rev="bar">Hello.</div>
+--
+rev :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+rev = attribute " rev=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE rev #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @rows@ attribute.
+--
+-- Example:
+--
+-- > div ! rows "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div rows="bar">Hello.</div>
+--
+rows :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+rows = attribute " rows=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE rows #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @rowspan@ attribute.
+--
+-- Example:
+--
+-- > div ! rowspan "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div rowspan="bar">Hello.</div>
+--
+rowspan :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+rowspan = attribute " rowspan=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE rowspan #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @rules@ attribute.
+--
+-- Example:
+--
+-- > div ! rules "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div rules="bar">Hello.</div>
+--
+rules :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+rules = attribute " rules=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE rules #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @scheme@ attribute.
+--
+-- Example:
+--
+-- > div ! scheme "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div scheme="bar">Hello.</div>
+--
+scheme :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+scheme = attribute " scheme=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE scheme #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @scope@ attribute.
+--
+-- Example:
+--
+-- > div ! scope "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div scope="bar">Hello.</div>
+--
+scope :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+scope = attribute " scope=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE scope #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @scrolling@ attribute.
+--
+-- Example:
+--
+-- > div ! scrolling "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div scrolling="bar">Hello.</div>
+--
+scrolling :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+scrolling = attribute " scrolling=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE scrolling #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @selected@ attribute.
+--
+-- Example:
+--
+-- > div ! selected "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div selected="bar">Hello.</div>
+--
+selected :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+selected = attribute " selected=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE selected #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @shape@ attribute.
+--
+-- Example:
+--
+-- > div ! shape "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div shape="bar">Hello.</div>
+--
+shape :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+shape = attribute " shape=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE shape #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @size@ attribute.
+--
+-- Example:
+--
+-- > div ! size "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div size="bar">Hello.</div>
+--
+size :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+size = attribute " size=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE size #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @span@ attribute.
+--
+-- Example:
+--
+-- > div ! span "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div span="bar">Hello.</div>
+--
+span :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+span = attribute " span=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE span #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @src@ attribute.
+--
+-- Example:
+--
+-- > div ! src "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div src="bar">Hello.</div>
+--
+src :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+src = attribute " src=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE src #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @standby@ attribute.
+--
+-- Example:
+--
+-- > div ! standby "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div standby="bar">Hello.</div>
+--
+standby :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+standby = attribute " standby=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE standby #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @start@ attribute.
+--
+-- Example:
+--
+-- > div ! start "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div start="bar">Hello.</div>
+--
+start :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+start = attribute " start=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE start #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @style@ attribute.
+--
+-- Example:
+--
+-- > div ! style "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div style="bar">Hello.</div>
+--
+style :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+style = attribute " style=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE style #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @summary@ attribute.
+--
+-- Example:
+--
+-- > div ! summary "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div summary="bar">Hello.</div>
+--
+summary :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+summary = attribute " summary=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE summary #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @tabindex@ attribute.
+--
+-- Example:
+--
+-- > div ! tabindex "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div tabindex="bar">Hello.</div>
+--
+tabindex :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+tabindex = attribute " tabindex=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE tabindex #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @target@ attribute.
+--
+-- Example:
+--
+-- > div ! target "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div target="bar">Hello.</div>
+--
+target :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+target = attribute " target=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE target #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @title@ attribute.
+--
+-- Example:
+--
+-- > div ! title "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div title="bar">Hello.</div>
+--
+title :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+title = attribute " title=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE title #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @type@ attribute.
+--
+-- Example:
+--
+-- > div ! type_ "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div type="bar">Hello.</div>
+--
+type_ :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+type_ = attribute " type=\""                                                    -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE type_ #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @usemap@ attribute.
+--
+-- Example:
+--
+-- > div ! usemap "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div usemap="bar">Hello.</div>
+--
+usemap :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+usemap = attribute " usemap=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE usemap #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @valign@ attribute.
+--
+-- Example:
+--
+-- > div ! valign "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div valign="bar">Hello.</div>
+--
+valign :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+valign = attribute " valign=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE valign #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @value@ attribute.
+--
+-- Example:
+--
+-- > div ! value "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div value="bar">Hello.</div>
+--
+value :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+value = attribute " value=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE value #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @valuetype@ attribute.
+--
+-- Example:
+--
+-- > div ! valuetype "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div valuetype="bar">Hello.</div>
+--
+valuetype :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+valuetype = attribute " valuetype=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE valuetype #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @vspace@ attribute.
+--
+-- Example:
+--
+-- > div ! vspace "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div vspace="bar">Hello.</div>
+--
+vspace :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+vspace = attribute " vspace=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE vspace #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @width@ attribute.
+--
+-- Example:
+--
+-- > div ! width "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div width="bar">Hello.</div>
+--
+width :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+width = attribute " width=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE width #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
diff --git a/Text/Blaze/Html4/Strict.hs b/Text/Blaze/Html4/Strict.hs
new file mode 100644
--- /dev/null
+++ b/Text/Blaze/Html4/Strict.hs
@@ -0,0 +1,1258 @@
+-- WARNING: This code was automatically generated. You should *never*
+-- edit it directly. Instead, edit the files who generated this code,
+-- you can find them in the @util/@ directory.
+
+{-# LANGUAGE OverloadedStrings #-}                                              -- ./Util/GenerateHtmlCombinators.hs:78
+-- | This module exports HTML combinators used to create documents.
+--
+module Text.Blaze.Html4.Strict                                                  -- ./Util/GenerateHtmlCombinators.hs:151
+    ( module Text.Blaze                                                         -- ./Util/GenerateHtmlCombinators.hs:152
+    , docType                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , docTypeHtml                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , a                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , abbr                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , acronym                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , address                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , area                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , b                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , bdo                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , big                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , blockquote                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , body                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , br                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , button                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , caption                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , cite                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , code                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , col                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , colgroup                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , dd                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , del                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , dfn                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , div                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , dl                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , dt                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , em                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , fieldset                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , form                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , h1                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h2                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h3                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h4                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h5                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h6                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , head                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , hr                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , html                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , i                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , img                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , input                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , ins                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , kbd                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , label                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , legend                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , li                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , link                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , map                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , meta                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , noscript                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , object                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , ol                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , optgroup                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , option                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , p                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , param                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , pre                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , q                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , samp                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , script                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , select                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , small                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , span                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , strong                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , style                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , sub                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , sup                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , table                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , tbody                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , td                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , textarea                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , tfoot                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , th                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , thead                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , title                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , tr                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , tt                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , ul                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , var                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    ) where                                                                     -- ./Util/GenerateHtmlCombinators.hs:155
+
+import Prelude ((>>), (.))                                                      -- ./Util/GenerateHtmlCombinators.hs:85
+                                                                                -- ./Util/GenerateHtmlCombinators.hs:86
+import Text.Blaze                                                               -- ./Util/GenerateHtmlCombinators.hs:87
+import Text.Blaze.Internal                                                      -- ./Util/GenerateHtmlCombinators.hs:88
+                                                                                -- ./Util/GenerateHtmlCombinators.hs:89
+-- | Combinator for the document type. This should be placed at the top
+-- of every HTML page.
+--
+-- Example:
+--
+-- > docType
+--
+-- Result:
+--
+-- > <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+-- >     "http://www.w3.org/TR/html4/strict.dtd">
+--
+docType :: Html  -- ^ The document type HTML.                                   -- ./Util/GenerateHtmlCombinators.hs:171
+docType = preEscapedText "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\"\n    \"http://www.w3.org/TR/html4/strict.dtd\">\n" -- ./Util/GenerateHtmlCombinators.hs:172
+{-# INLINE docType #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:173
+
+-- | Combinator for the @\<html>@ element. This combinator will also
+-- insert the correct doctype.
+--
+-- Example:
+--
+-- > docTypeHtml $ span $ text "foo"
+--
+-- Result:
+--
+-- > <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+-- >     "http://www.w3.org/TR/html4/strict.dtd">
+-- > <html><span>foo</span></html>
+--
+docTypeHtml :: Html  -- ^ Inner HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:192
+            -> Html  -- ^ Resulting HTML.                                       -- ./Util/GenerateHtmlCombinators.hs:193
+docTypeHtml inner = docType >> html inner                                       -- ./Util/GenerateHtmlCombinators.hs:194
+{-# INLINE docTypeHtml #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:195
+
+-- | Combinator for the @\<a>@ element.
+--
+-- Example:
+--
+-- > a $ span $ text "foo"
+--
+-- Result:
+--
+-- > <a><span>foo</span></a>
+--
+a :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+a = Parent "<a" "</a>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE a #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<abbr>@ element.
+--
+-- Example:
+--
+-- > abbr $ span $ text "foo"
+--
+-- Result:
+--
+-- > <abbr><span>foo</span></abbr>
+--
+abbr :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+abbr = Parent "<abbr" "</abbr>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE abbr #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<acronym>@ element.
+--
+-- Example:
+--
+-- > acronym $ span $ text "foo"
+--
+-- Result:
+--
+-- > <acronym><span>foo</span></acronym>
+--
+acronym :: Html  -- ^ Inner HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:212
+        -> Html  -- ^ Resulting HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:213
+acronym = Parent "<acronym" "</acronym>"                                        -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE acronym #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<address>@ element.
+--
+-- Example:
+--
+-- > address $ span $ text "foo"
+--
+-- Result:
+--
+-- > <address><span>foo</span></address>
+--
+address :: Html  -- ^ Inner HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:212
+        -> Html  -- ^ Resulting HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:213
+address = Parent "<address" "</address>"                                        -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE address #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<area />@ element.
+--
+-- Example:
+--
+-- > area
+--
+-- Result:
+--
+-- > <area />
+--
+area :: Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:238
+area = Leaf "<area" ">"                                                         -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE area #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<b>@ element.
+--
+-- Example:
+--
+-- > b $ span $ text "foo"
+--
+-- Result:
+--
+-- > <b><span>foo</span></b>
+--
+b :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+b = Parent "<b" "</b>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE b #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<bdo>@ element.
+--
+-- Example:
+--
+-- > bdo $ span $ text "foo"
+--
+-- Result:
+--
+-- > <bdo><span>foo</span></bdo>
+--
+bdo :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+bdo = Parent "<bdo" "</bdo>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE bdo #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<big>@ element.
+--
+-- Example:
+--
+-- > big $ span $ text "foo"
+--
+-- Result:
+--
+-- > <big><span>foo</span></big>
+--
+big :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+big = Parent "<big" "</big>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE big #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<blockquote>@ element.
+--
+-- Example:
+--
+-- > blockquote $ span $ text "foo"
+--
+-- Result:
+--
+-- > <blockquote><span>foo</span></blockquote>
+--
+blockquote :: Html  -- ^ Inner HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:212
+           -> Html  -- ^ Resulting HTML.                                        -- ./Util/GenerateHtmlCombinators.hs:213
+blockquote = Parent "<blockquote" "</blockquote>"                               -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE blockquote #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<body>@ element.
+--
+-- Example:
+--
+-- > body $ span $ text "foo"
+--
+-- Result:
+--
+-- > <body><span>foo</span></body>
+--
+body :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+body = Parent "<body" "</body>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE body #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<br />@ element.
+--
+-- Example:
+--
+-- > br
+--
+-- Result:
+--
+-- > <br />
+--
+br :: Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:238
+br = Leaf "<br" ">"                                                             -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE br #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<button>@ element.
+--
+-- Example:
+--
+-- > button $ span $ text "foo"
+--
+-- Result:
+--
+-- > <button><span>foo</span></button>
+--
+button :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+button = Parent "<button" "</button>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE button #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<caption>@ element.
+--
+-- Example:
+--
+-- > caption $ span $ text "foo"
+--
+-- Result:
+--
+-- > <caption><span>foo</span></caption>
+--
+caption :: Html  -- ^ Inner HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:212
+        -> Html  -- ^ Resulting HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:213
+caption = Parent "<caption" "</caption>"                                        -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE caption #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<cite>@ element.
+--
+-- Example:
+--
+-- > cite $ span $ text "foo"
+--
+-- Result:
+--
+-- > <cite><span>foo</span></cite>
+--
+cite :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+cite = Parent "<cite" "</cite>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE cite #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<code>@ element.
+--
+-- Example:
+--
+-- > code $ span $ text "foo"
+--
+-- Result:
+--
+-- > <code><span>foo</span></code>
+--
+code :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+code = Parent "<code" "</code>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE code #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<col />@ element.
+--
+-- Example:
+--
+-- > col
+--
+-- Result:
+--
+-- > <col />
+--
+col :: Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:238
+col = Leaf "<col" ">"                                                           -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE col #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<colgroup>@ element.
+--
+-- Example:
+--
+-- > colgroup $ span $ text "foo"
+--
+-- Result:
+--
+-- > <colgroup><span>foo</span></colgroup>
+--
+colgroup :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+colgroup = Parent "<colgroup" "</colgroup>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE colgroup #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<dd>@ element.
+--
+-- Example:
+--
+-- > dd $ span $ text "foo"
+--
+-- Result:
+--
+-- > <dd><span>foo</span></dd>
+--
+dd :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+dd = Parent "<dd" "</dd>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE dd #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<del>@ element.
+--
+-- Example:
+--
+-- > del $ span $ text "foo"
+--
+-- Result:
+--
+-- > <del><span>foo</span></del>
+--
+del :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+del = Parent "<del" "</del>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE del #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<dfn>@ element.
+--
+-- Example:
+--
+-- > dfn $ span $ text "foo"
+--
+-- Result:
+--
+-- > <dfn><span>foo</span></dfn>
+--
+dfn :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+dfn = Parent "<dfn" "</dfn>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE dfn #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<div>@ element.
+--
+-- Example:
+--
+-- > div $ span $ text "foo"
+--
+-- Result:
+--
+-- > <div><span>foo</span></div>
+--
+div :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+div = Parent "<div" "</div>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE div #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<dl>@ element.
+--
+-- Example:
+--
+-- > dl $ span $ text "foo"
+--
+-- Result:
+--
+-- > <dl><span>foo</span></dl>
+--
+dl :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+dl = Parent "<dl" "</dl>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE dl #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<dt>@ element.
+--
+-- Example:
+--
+-- > dt $ span $ text "foo"
+--
+-- Result:
+--
+-- > <dt><span>foo</span></dt>
+--
+dt :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+dt = Parent "<dt" "</dt>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE dt #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<em>@ element.
+--
+-- Example:
+--
+-- > em $ span $ text "foo"
+--
+-- Result:
+--
+-- > <em><span>foo</span></em>
+--
+em :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+em = Parent "<em" "</em>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE em #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<fieldset>@ element.
+--
+-- Example:
+--
+-- > fieldset $ span $ text "foo"
+--
+-- Result:
+--
+-- > <fieldset><span>foo</span></fieldset>
+--
+fieldset :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+fieldset = Parent "<fieldset" "</fieldset>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE fieldset #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<form>@ element.
+--
+-- Example:
+--
+-- > form $ span $ text "foo"
+--
+-- Result:
+--
+-- > <form><span>foo</span></form>
+--
+form :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+form = Parent "<form" "</form>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE form #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h1>@ element.
+--
+-- Example:
+--
+-- > h1 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h1><span>foo</span></h1>
+--
+h1 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h1 = Parent "<h1" "</h1>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h1 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h2>@ element.
+--
+-- Example:
+--
+-- > h2 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h2><span>foo</span></h2>
+--
+h2 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h2 = Parent "<h2" "</h2>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h2 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h3>@ element.
+--
+-- Example:
+--
+-- > h3 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h3><span>foo</span></h3>
+--
+h3 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h3 = Parent "<h3" "</h3>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h3 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h4>@ element.
+--
+-- Example:
+--
+-- > h4 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h4><span>foo</span></h4>
+--
+h4 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h4 = Parent "<h4" "</h4>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h4 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h5>@ element.
+--
+-- Example:
+--
+-- > h5 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h5><span>foo</span></h5>
+--
+h5 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h5 = Parent "<h5" "</h5>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h5 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h6>@ element.
+--
+-- Example:
+--
+-- > h6 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h6><span>foo</span></h6>
+--
+h6 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h6 = Parent "<h6" "</h6>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h6 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<head>@ element.
+--
+-- Example:
+--
+-- > head $ span $ text "foo"
+--
+-- Result:
+--
+-- > <head><span>foo</span></head>
+--
+head :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+head = Parent "<head" "</head>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE head #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<hr />@ element.
+--
+-- Example:
+--
+-- > hr
+--
+-- Result:
+--
+-- > <hr />
+--
+hr :: Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:238
+hr = Leaf "<hr" ">"                                                             -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE hr #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<html>@ element.
+--
+-- Example:
+--
+-- > html $ span $ text "foo"
+--
+-- Result:
+--
+-- > <html><span>foo</span></html>
+--
+html :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+html = Parent "<html" "</html>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE html #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<i>@ element.
+--
+-- Example:
+--
+-- > i $ span $ text "foo"
+--
+-- Result:
+--
+-- > <i><span>foo</span></i>
+--
+i :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+i = Parent "<i" "</i>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE i #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<img />@ element.
+--
+-- Example:
+--
+-- > img
+--
+-- Result:
+--
+-- > <img />
+--
+img :: Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:238
+img = Leaf "<img" ">"                                                           -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE img #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<input />@ element.
+--
+-- Example:
+--
+-- > input
+--
+-- Result:
+--
+-- > <input />
+--
+input :: Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:238
+input = Leaf "<input" ">"                                                       -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE input #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<ins>@ element.
+--
+-- Example:
+--
+-- > ins $ span $ text "foo"
+--
+-- Result:
+--
+-- > <ins><span>foo</span></ins>
+--
+ins :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+ins = Parent "<ins" "</ins>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE ins #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<kbd>@ element.
+--
+-- Example:
+--
+-- > kbd $ span $ text "foo"
+--
+-- Result:
+--
+-- > <kbd><span>foo</span></kbd>
+--
+kbd :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+kbd = Parent "<kbd" "</kbd>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE kbd #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<label>@ element.
+--
+-- Example:
+--
+-- > label $ span $ text "foo"
+--
+-- Result:
+--
+-- > <label><span>foo</span></label>
+--
+label :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+label = Parent "<label" "</label>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE label #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<legend>@ element.
+--
+-- Example:
+--
+-- > legend $ span $ text "foo"
+--
+-- Result:
+--
+-- > <legend><span>foo</span></legend>
+--
+legend :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+legend = Parent "<legend" "</legend>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE legend #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<li>@ element.
+--
+-- Example:
+--
+-- > li $ span $ text "foo"
+--
+-- Result:
+--
+-- > <li><span>foo</span></li>
+--
+li :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+li = Parent "<li" "</li>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE li #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<link />@ element.
+--
+-- Example:
+--
+-- > link
+--
+-- Result:
+--
+-- > <link />
+--
+link :: Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:238
+link = Leaf "<link" ">"                                                         -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE link #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<map>@ element.
+--
+-- Example:
+--
+-- > map $ span $ text "foo"
+--
+-- Result:
+--
+-- > <map><span>foo</span></map>
+--
+map :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+map = Parent "<map" "</map>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE map #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<meta />@ element.
+--
+-- Example:
+--
+-- > meta
+--
+-- Result:
+--
+-- > <meta />
+--
+meta :: Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:238
+meta = Leaf "<meta" ">"                                                         -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE meta #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<noscript>@ element.
+--
+-- Example:
+--
+-- > noscript $ span $ text "foo"
+--
+-- Result:
+--
+-- > <noscript><span>foo</span></noscript>
+--
+noscript :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+noscript = Parent "<noscript" "</noscript>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE noscript #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<object>@ element.
+--
+-- Example:
+--
+-- > object $ span $ text "foo"
+--
+-- Result:
+--
+-- > <object><span>foo</span></object>
+--
+object :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+object = Parent "<object" "</object>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE object #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<ol>@ element.
+--
+-- Example:
+--
+-- > ol $ span $ text "foo"
+--
+-- Result:
+--
+-- > <ol><span>foo</span></ol>
+--
+ol :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+ol = Parent "<ol" "</ol>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE ol #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<optgroup>@ element.
+--
+-- Example:
+--
+-- > optgroup $ span $ text "foo"
+--
+-- Result:
+--
+-- > <optgroup><span>foo</span></optgroup>
+--
+optgroup :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+optgroup = Parent "<optgroup" "</optgroup>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE optgroup #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<option>@ element.
+--
+-- Example:
+--
+-- > option $ span $ text "foo"
+--
+-- Result:
+--
+-- > <option><span>foo</span></option>
+--
+option :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+option = Parent "<option" "</option>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE option #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<p>@ element.
+--
+-- Example:
+--
+-- > p $ span $ text "foo"
+--
+-- Result:
+--
+-- > <p><span>foo</span></p>
+--
+p :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+p = Parent "<p" "</p>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE p #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<param />@ element.
+--
+-- Example:
+--
+-- > param
+--
+-- Result:
+--
+-- > <param />
+--
+param :: Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:238
+param = Leaf "<param" ">"                                                       -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE param #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<pre>@ element.
+--
+-- Example:
+--
+-- > pre $ span $ text "foo"
+--
+-- Result:
+--
+-- > <pre><span>foo</span></pre>
+--
+pre :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+pre = Parent "<pre" "</pre>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE pre #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<q>@ element.
+--
+-- Example:
+--
+-- > q $ span $ text "foo"
+--
+-- Result:
+--
+-- > <q><span>foo</span></q>
+--
+q :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+q = Parent "<q" "</q>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE q #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<samp>@ element.
+--
+-- Example:
+--
+-- > samp $ span $ text "foo"
+--
+-- Result:
+--
+-- > <samp><span>foo</span></samp>
+--
+samp :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+samp = Parent "<samp" "</samp>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE samp #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<script>@ element.
+--
+-- Example:
+--
+-- > script $ span $ text "foo"
+--
+-- Result:
+--
+-- > <script><span>foo</span></script>
+--
+script :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+script = Parent "<script" "</script>" . external                                -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE script #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<select>@ element.
+--
+-- Example:
+--
+-- > select $ span $ text "foo"
+--
+-- Result:
+--
+-- > <select><span>foo</span></select>
+--
+select :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+select = Parent "<select" "</select>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE select #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<small>@ element.
+--
+-- Example:
+--
+-- > small $ span $ text "foo"
+--
+-- Result:
+--
+-- > <small><span>foo</span></small>
+--
+small :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+small = Parent "<small" "</small>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE small #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<span>@ element.
+--
+-- Example:
+--
+-- > span $ span $ text "foo"
+--
+-- Result:
+--
+-- > <span><span>foo</span></span>
+--
+span :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+span = Parent "<span" "</span>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE span #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<strong>@ element.
+--
+-- Example:
+--
+-- > strong $ span $ text "foo"
+--
+-- Result:
+--
+-- > <strong><span>foo</span></strong>
+--
+strong :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+strong = Parent "<strong" "</strong>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE strong #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<style>@ element.
+--
+-- Example:
+--
+-- > style $ span $ text "foo"
+--
+-- Result:
+--
+-- > <style><span>foo</span></style>
+--
+style :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+style = Parent "<style" "</style>" . external                                   -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE style #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<sub>@ element.
+--
+-- Example:
+--
+-- > sub $ span $ text "foo"
+--
+-- Result:
+--
+-- > <sub><span>foo</span></sub>
+--
+sub :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+sub = Parent "<sub" "</sub>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE sub #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<sup>@ element.
+--
+-- Example:
+--
+-- > sup $ span $ text "foo"
+--
+-- Result:
+--
+-- > <sup><span>foo</span></sup>
+--
+sup :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+sup = Parent "<sup" "</sup>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE sup #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<table>@ element.
+--
+-- Example:
+--
+-- > table $ span $ text "foo"
+--
+-- Result:
+--
+-- > <table><span>foo</span></table>
+--
+table :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+table = Parent "<table" "</table>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE table #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<tbody>@ element.
+--
+-- Example:
+--
+-- > tbody $ span $ text "foo"
+--
+-- Result:
+--
+-- > <tbody><span>foo</span></tbody>
+--
+tbody :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+tbody = Parent "<tbody" "</tbody>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE tbody #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<td>@ element.
+--
+-- Example:
+--
+-- > td $ span $ text "foo"
+--
+-- Result:
+--
+-- > <td><span>foo</span></td>
+--
+td :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+td = Parent "<td" "</td>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE td #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<textarea>@ element.
+--
+-- Example:
+--
+-- > textarea $ span $ text "foo"
+--
+-- Result:
+--
+-- > <textarea><span>foo</span></textarea>
+--
+textarea :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+textarea = Parent "<textarea" "</textarea>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE textarea #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<tfoot>@ element.
+--
+-- Example:
+--
+-- > tfoot $ span $ text "foo"
+--
+-- Result:
+--
+-- > <tfoot><span>foo</span></tfoot>
+--
+tfoot :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+tfoot = Parent "<tfoot" "</tfoot>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE tfoot #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<th>@ element.
+--
+-- Example:
+--
+-- > th $ span $ text "foo"
+--
+-- Result:
+--
+-- > <th><span>foo</span></th>
+--
+th :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+th = Parent "<th" "</th>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE th #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<thead>@ element.
+--
+-- Example:
+--
+-- > thead $ span $ text "foo"
+--
+-- Result:
+--
+-- > <thead><span>foo</span></thead>
+--
+thead :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+thead = Parent "<thead" "</thead>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE thead #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<title>@ element.
+--
+-- Example:
+--
+-- > title $ span $ text "foo"
+--
+-- Result:
+--
+-- > <title><span>foo</span></title>
+--
+title :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+title = Parent "<title" "</title>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE title #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<tr>@ element.
+--
+-- Example:
+--
+-- > tr $ span $ text "foo"
+--
+-- Result:
+--
+-- > <tr><span>foo</span></tr>
+--
+tr :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+tr = Parent "<tr" "</tr>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE tr #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<tt>@ element.
+--
+-- Example:
+--
+-- > tt $ span $ text "foo"
+--
+-- Result:
+--
+-- > <tt><span>foo</span></tt>
+--
+tt :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+tt = Parent "<tt" "</tt>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE tt #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<ul>@ element.
+--
+-- Example:
+--
+-- > ul $ span $ text "foo"
+--
+-- Result:
+--
+-- > <ul><span>foo</span></ul>
+--
+ul :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+ul = Parent "<ul" "</ul>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE ul #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<var>@ element.
+--
+-- Example:
+--
+-- > var $ span $ text "foo"
+--
+-- Result:
+--
+-- > <var><span>foo</span></var>
+--
+var :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+var = Parent "<var" "</var>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE var #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
diff --git a/Text/Blaze/Html4/Strict/Attributes.hs b/Text/Blaze/Html4/Strict/Attributes.hs
new file mode 100644
--- /dev/null
+++ b/Text/Blaze/Html4/Strict/Attributes.hs
@@ -0,0 +1,1470 @@
+-- WARNING: This code was automatically generated. You should *never*
+-- edit it directly. Instead, edit the files who generated this code,
+-- you can find them in the @util/@ directory.
+
+-- | This module exports combinators that provide you with the
+-- ability to set attributes on HTML elements.
+--
+{-# LANGUAGE OverloadedStrings #-}                                              -- ./Util/GenerateHtmlCombinators.hs:103
+module Text.Blaze.Html4.Strict.Attributes                                       -- ./Util/GenerateHtmlCombinators.hs:151
+    ( abbr                                                                      -- ./Util/GenerateHtmlCombinators.hs:152
+    , accept                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , accesskey                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , action                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , align                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , alt                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , archive                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , axis                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , border                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , cellpadding                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , cellspacing                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , char                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , charoff                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , charset                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , checked                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , cite                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , class_                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , classid                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , codebase                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , codetype                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , cols                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , colspan                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , content                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , coords                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , data_                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , datetime                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , declare                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , defer                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , dir                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , disabled                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , enctype                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , for                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , frame                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , headers                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , height                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , href                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , hreflang                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , http_equiv                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , id                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , label                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , lang                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , maxlength                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , media                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , method                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , multiple                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , name                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , nohref                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , onabort                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , onblur                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , onchange                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , onclick                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , ondblclick                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , onfocus                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , onkeydown                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , onkeypress                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , onkeyup                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , onload                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmousedown                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmousemove                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmouseout                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmouseover                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmouseup                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , onreset                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , onselect                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , onsubmit                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , onunload                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , profile                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , readonly                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , rel                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , rev                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , rows                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , rowspan                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , rules                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , scheme                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , scope                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , selected                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , shape                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , size                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , span                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , src                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , standby                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , style                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , summary                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , tabindex                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , title                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , type_                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , usemap                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , valign                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , value                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , valuetype                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , width                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    ) where                                                                     -- ./Util/GenerateHtmlCombinators.hs:155
+
+import Prelude ()                                                               -- ./Util/GenerateHtmlCombinators.hs:105
+                                                                                -- ./Util/GenerateHtmlCombinators.hs:106
+import Text.Blaze.Internal (Attribute, AttributeValue, attribute)               -- ./Util/GenerateHtmlCombinators.hs:107
+                                                                                -- ./Util/GenerateHtmlCombinators.hs:108
+-- | Combinator for the @abbr@ attribute.
+--
+-- Example:
+--
+-- > div ! abbr "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div abbr="bar">Hello.</div>
+--
+abbr :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+abbr = attribute " abbr=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE abbr #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @accept@ attribute.
+--
+-- Example:
+--
+-- > div ! accept "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div accept="bar">Hello.</div>
+--
+accept :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+accept = attribute " accept=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE accept #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @accesskey@ attribute.
+--
+-- Example:
+--
+-- > div ! accesskey "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div accesskey="bar">Hello.</div>
+--
+accesskey :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+accesskey = attribute " accesskey=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE accesskey #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @action@ attribute.
+--
+-- Example:
+--
+-- > div ! action "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div action="bar">Hello.</div>
+--
+action :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+action = attribute " action=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE action #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @align@ attribute.
+--
+-- Example:
+--
+-- > div ! align "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div align="bar">Hello.</div>
+--
+align :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+align = attribute " align=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE align #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @alt@ attribute.
+--
+-- Example:
+--
+-- > div ! alt "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div alt="bar">Hello.</div>
+--
+alt :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+alt = attribute " alt=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE alt #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @archive@ attribute.
+--
+-- Example:
+--
+-- > div ! archive "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div archive="bar">Hello.</div>
+--
+archive :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+archive = attribute " archive=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE archive #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @axis@ attribute.
+--
+-- Example:
+--
+-- > div ! axis "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div axis="bar">Hello.</div>
+--
+axis :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+axis = attribute " axis=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE axis #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @border@ attribute.
+--
+-- Example:
+--
+-- > div ! border "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div border="bar">Hello.</div>
+--
+border :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+border = attribute " border=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE border #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @cellpadding@ attribute.
+--
+-- Example:
+--
+-- > div ! cellpadding "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div cellpadding="bar">Hello.</div>
+--
+cellpadding :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+cellpadding = attribute " cellpadding=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE cellpadding #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @cellspacing@ attribute.
+--
+-- Example:
+--
+-- > div ! cellspacing "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div cellspacing="bar">Hello.</div>
+--
+cellspacing :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+cellspacing = attribute " cellspacing=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE cellspacing #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @char@ attribute.
+--
+-- Example:
+--
+-- > div ! char "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div char="bar">Hello.</div>
+--
+char :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+char = attribute " char=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE char #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @charoff@ attribute.
+--
+-- Example:
+--
+-- > div ! charoff "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div charoff="bar">Hello.</div>
+--
+charoff :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+charoff = attribute " charoff=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE charoff #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @charset@ attribute.
+--
+-- Example:
+--
+-- > div ! charset "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div charset="bar">Hello.</div>
+--
+charset :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+charset = attribute " charset=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE charset #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @checked@ attribute.
+--
+-- Example:
+--
+-- > div ! checked "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div checked="bar">Hello.</div>
+--
+checked :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+checked = attribute " checked=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE checked #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @cite@ attribute.
+--
+-- Example:
+--
+-- > div ! cite "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div cite="bar">Hello.</div>
+--
+cite :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+cite = attribute " cite=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE cite #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @class@ attribute.
+--
+-- Example:
+--
+-- > div ! class_ "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div class="bar">Hello.</div>
+--
+class_ :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+class_ = attribute " class=\""                                                  -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE class_ #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @classid@ attribute.
+--
+-- Example:
+--
+-- > div ! classid "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div classid="bar">Hello.</div>
+--
+classid :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+classid = attribute " classid=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE classid #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @codebase@ attribute.
+--
+-- Example:
+--
+-- > div ! codebase "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div codebase="bar">Hello.</div>
+--
+codebase :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+codebase = attribute " codebase=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE codebase #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @codetype@ attribute.
+--
+-- Example:
+--
+-- > div ! codetype "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div codetype="bar">Hello.</div>
+--
+codetype :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+codetype = attribute " codetype=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE codetype #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @cols@ attribute.
+--
+-- Example:
+--
+-- > div ! cols "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div cols="bar">Hello.</div>
+--
+cols :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+cols = attribute " cols=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE cols #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @colspan@ attribute.
+--
+-- Example:
+--
+-- > div ! colspan "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div colspan="bar">Hello.</div>
+--
+colspan :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+colspan = attribute " colspan=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE colspan #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @content@ attribute.
+--
+-- Example:
+--
+-- > div ! content "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div content="bar">Hello.</div>
+--
+content :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+content = attribute " content=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE content #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @coords@ attribute.
+--
+-- Example:
+--
+-- > div ! coords "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div coords="bar">Hello.</div>
+--
+coords :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+coords = attribute " coords=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE coords #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @data@ attribute.
+--
+-- Example:
+--
+-- > div ! data_ "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div data="bar">Hello.</div>
+--
+data_ :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+data_ = attribute " data=\""                                                    -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE data_ #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @datetime@ attribute.
+--
+-- Example:
+--
+-- > div ! datetime "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div datetime="bar">Hello.</div>
+--
+datetime :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+datetime = attribute " datetime=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE datetime #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @declare@ attribute.
+--
+-- Example:
+--
+-- > div ! declare "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div declare="bar">Hello.</div>
+--
+declare :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+declare = attribute " declare=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE declare #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @defer@ attribute.
+--
+-- Example:
+--
+-- > div ! defer "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div defer="bar">Hello.</div>
+--
+defer :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+defer = attribute " defer=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE defer #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @dir@ attribute.
+--
+-- Example:
+--
+-- > div ! dir "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div dir="bar">Hello.</div>
+--
+dir :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+dir = attribute " dir=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE dir #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @disabled@ attribute.
+--
+-- Example:
+--
+-- > div ! disabled "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div disabled="bar">Hello.</div>
+--
+disabled :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+disabled = attribute " disabled=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE disabled #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @enctype@ attribute.
+--
+-- Example:
+--
+-- > div ! enctype "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div enctype="bar">Hello.</div>
+--
+enctype :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+enctype = attribute " enctype=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE enctype #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @for@ attribute.
+--
+-- Example:
+--
+-- > div ! for "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div for="bar">Hello.</div>
+--
+for :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+for = attribute " for=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE for #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @frame@ attribute.
+--
+-- Example:
+--
+-- > div ! frame "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div frame="bar">Hello.</div>
+--
+frame :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+frame = attribute " frame=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE frame #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @headers@ attribute.
+--
+-- Example:
+--
+-- > div ! headers "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div headers="bar">Hello.</div>
+--
+headers :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+headers = attribute " headers=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE headers #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @height@ attribute.
+--
+-- Example:
+--
+-- > div ! height "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div height="bar">Hello.</div>
+--
+height :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+height = attribute " height=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE height #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @href@ attribute.
+--
+-- Example:
+--
+-- > div ! href "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div href="bar">Hello.</div>
+--
+href :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+href = attribute " href=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE href #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @hreflang@ attribute.
+--
+-- Example:
+--
+-- > div ! hreflang "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div hreflang="bar">Hello.</div>
+--
+hreflang :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+hreflang = attribute " hreflang=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE hreflang #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @http-equiv@ attribute.
+--
+-- Example:
+--
+-- > div ! http_equiv "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div http-equiv="bar">Hello.</div>
+--
+http_equiv :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+http_equiv = attribute " http-equiv=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE http_equiv #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @id@ attribute.
+--
+-- Example:
+--
+-- > div ! id "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div id="bar">Hello.</div>
+--
+id :: AttributeValue  -- ^ Attribute value.                                     -- ./Util/GenerateHtmlCombinators.hs:260
+   -> Attribute       -- ^ Resulting attribute.                                 -- ./Util/GenerateHtmlCombinators.hs:261
+id = attribute " id=\""                                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE id #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @label@ attribute.
+--
+-- Example:
+--
+-- > div ! label "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div label="bar">Hello.</div>
+--
+label :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+label = attribute " label=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE label #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @lang@ attribute.
+--
+-- Example:
+--
+-- > div ! lang "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div lang="bar">Hello.</div>
+--
+lang :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+lang = attribute " lang=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE lang #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @maxlength@ attribute.
+--
+-- Example:
+--
+-- > div ! maxlength "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div maxlength="bar">Hello.</div>
+--
+maxlength :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+maxlength = attribute " maxlength=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE maxlength #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @media@ attribute.
+--
+-- Example:
+--
+-- > div ! media "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div media="bar">Hello.</div>
+--
+media :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+media = attribute " media=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE media #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @method@ attribute.
+--
+-- Example:
+--
+-- > div ! method "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div method="bar">Hello.</div>
+--
+method :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+method = attribute " method=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE method #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @multiple@ attribute.
+--
+-- Example:
+--
+-- > div ! multiple "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div multiple="bar">Hello.</div>
+--
+multiple :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+multiple = attribute " multiple=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE multiple #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @name@ attribute.
+--
+-- Example:
+--
+-- > div ! name "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div name="bar">Hello.</div>
+--
+name :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+name = attribute " name=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE name #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @nohref@ attribute.
+--
+-- Example:
+--
+-- > div ! nohref "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div nohref="bar">Hello.</div>
+--
+nohref :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+nohref = attribute " nohref=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE nohref #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onabort@ attribute.
+--
+-- Example:
+--
+-- > div ! onabort "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onabort="bar">Hello.</div>
+--
+onabort :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onabort = attribute " onabort=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onabort #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onblur@ attribute.
+--
+-- Example:
+--
+-- > div ! onblur "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onblur="bar">Hello.</div>
+--
+onblur :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+onblur = attribute " onblur=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onblur #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onchange@ attribute.
+--
+-- Example:
+--
+-- > div ! onchange "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onchange="bar">Hello.</div>
+--
+onchange :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onchange = attribute " onchange=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onchange #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onclick@ attribute.
+--
+-- Example:
+--
+-- > div ! onclick "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onclick="bar">Hello.</div>
+--
+onclick :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onclick = attribute " onclick=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onclick #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @ondblclick@ attribute.
+--
+-- Example:
+--
+-- > div ! ondblclick "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div ondblclick="bar">Hello.</div>
+--
+ondblclick :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+ondblclick = attribute " ondblclick=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE ondblclick #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onfocus@ attribute.
+--
+-- Example:
+--
+-- > div ! onfocus "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onfocus="bar">Hello.</div>
+--
+onfocus :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onfocus = attribute " onfocus=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onfocus #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onkeydown@ attribute.
+--
+-- Example:
+--
+-- > div ! onkeydown "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onkeydown="bar">Hello.</div>
+--
+onkeydown :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+onkeydown = attribute " onkeydown=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onkeydown #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onkeypress@ attribute.
+--
+-- Example:
+--
+-- > div ! onkeypress "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onkeypress="bar">Hello.</div>
+--
+onkeypress :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+onkeypress = attribute " onkeypress=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onkeypress #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onkeyup@ attribute.
+--
+-- Example:
+--
+-- > div ! onkeyup "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onkeyup="bar">Hello.</div>
+--
+onkeyup :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onkeyup = attribute " onkeyup=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onkeyup #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onload@ attribute.
+--
+-- Example:
+--
+-- > div ! onload "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onload="bar">Hello.</div>
+--
+onload :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+onload = attribute " onload=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onload #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmousedown@ attribute.
+--
+-- Example:
+--
+-- > div ! onmousedown "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmousedown="bar">Hello.</div>
+--
+onmousedown :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+onmousedown = attribute " onmousedown=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmousedown #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmousemove@ attribute.
+--
+-- Example:
+--
+-- > div ! onmousemove "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmousemove="bar">Hello.</div>
+--
+onmousemove :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+onmousemove = attribute " onmousemove=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmousemove #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmouseout@ attribute.
+--
+-- Example:
+--
+-- > div ! onmouseout "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmouseout="bar">Hello.</div>
+--
+onmouseout :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+onmouseout = attribute " onmouseout=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmouseout #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmouseover@ attribute.
+--
+-- Example:
+--
+-- > div ! onmouseover "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmouseover="bar">Hello.</div>
+--
+onmouseover :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+onmouseover = attribute " onmouseover=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmouseover #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmouseup@ attribute.
+--
+-- Example:
+--
+-- > div ! onmouseup "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmouseup="bar">Hello.</div>
+--
+onmouseup :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+onmouseup = attribute " onmouseup=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmouseup #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onreset@ attribute.
+--
+-- Example:
+--
+-- > div ! onreset "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onreset="bar">Hello.</div>
+--
+onreset :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onreset = attribute " onreset=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onreset #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onselect@ attribute.
+--
+-- Example:
+--
+-- > div ! onselect "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onselect="bar">Hello.</div>
+--
+onselect :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onselect = attribute " onselect=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onselect #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onsubmit@ attribute.
+--
+-- Example:
+--
+-- > div ! onsubmit "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onsubmit="bar">Hello.</div>
+--
+onsubmit :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onsubmit = attribute " onsubmit=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onsubmit #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onunload@ attribute.
+--
+-- Example:
+--
+-- > div ! onunload "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onunload="bar">Hello.</div>
+--
+onunload :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onunload = attribute " onunload=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onunload #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @profile@ attribute.
+--
+-- Example:
+--
+-- > div ! profile "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div profile="bar">Hello.</div>
+--
+profile :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+profile = attribute " profile=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE profile #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @readonly@ attribute.
+--
+-- Example:
+--
+-- > div ! readonly "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div readonly="bar">Hello.</div>
+--
+readonly :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+readonly = attribute " readonly=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE readonly #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @rel@ attribute.
+--
+-- Example:
+--
+-- > div ! rel "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div rel="bar">Hello.</div>
+--
+rel :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+rel = attribute " rel=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE rel #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @rev@ attribute.
+--
+-- Example:
+--
+-- > div ! rev "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div rev="bar">Hello.</div>
+--
+rev :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+rev = attribute " rev=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE rev #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @rows@ attribute.
+--
+-- Example:
+--
+-- > div ! rows "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div rows="bar">Hello.</div>
+--
+rows :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+rows = attribute " rows=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE rows #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @rowspan@ attribute.
+--
+-- Example:
+--
+-- > div ! rowspan "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div rowspan="bar">Hello.</div>
+--
+rowspan :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+rowspan = attribute " rowspan=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE rowspan #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @rules@ attribute.
+--
+-- Example:
+--
+-- > div ! rules "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div rules="bar">Hello.</div>
+--
+rules :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+rules = attribute " rules=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE rules #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @scheme@ attribute.
+--
+-- Example:
+--
+-- > div ! scheme "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div scheme="bar">Hello.</div>
+--
+scheme :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+scheme = attribute " scheme=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE scheme #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @scope@ attribute.
+--
+-- Example:
+--
+-- > div ! scope "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div scope="bar">Hello.</div>
+--
+scope :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+scope = attribute " scope=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE scope #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @selected@ attribute.
+--
+-- Example:
+--
+-- > div ! selected "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div selected="bar">Hello.</div>
+--
+selected :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+selected = attribute " selected=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE selected #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @shape@ attribute.
+--
+-- Example:
+--
+-- > div ! shape "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div shape="bar">Hello.</div>
+--
+shape :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+shape = attribute " shape=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE shape #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @size@ attribute.
+--
+-- Example:
+--
+-- > div ! size "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div size="bar">Hello.</div>
+--
+size :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+size = attribute " size=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE size #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @span@ attribute.
+--
+-- Example:
+--
+-- > div ! span "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div span="bar">Hello.</div>
+--
+span :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+span = attribute " span=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE span #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @src@ attribute.
+--
+-- Example:
+--
+-- > div ! src "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div src="bar">Hello.</div>
+--
+src :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+src = attribute " src=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE src #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @standby@ attribute.
+--
+-- Example:
+--
+-- > div ! standby "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div standby="bar">Hello.</div>
+--
+standby :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+standby = attribute " standby=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE standby #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @style@ attribute.
+--
+-- Example:
+--
+-- > div ! style "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div style="bar">Hello.</div>
+--
+style :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+style = attribute " style=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE style #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @summary@ attribute.
+--
+-- Example:
+--
+-- > div ! summary "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div summary="bar">Hello.</div>
+--
+summary :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+summary = attribute " summary=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE summary #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @tabindex@ attribute.
+--
+-- Example:
+--
+-- > div ! tabindex "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div tabindex="bar">Hello.</div>
+--
+tabindex :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+tabindex = attribute " tabindex=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE tabindex #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @title@ attribute.
+--
+-- Example:
+--
+-- > div ! title "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div title="bar">Hello.</div>
+--
+title :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+title = attribute " title=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE title #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @type@ attribute.
+--
+-- Example:
+--
+-- > div ! type_ "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div type="bar">Hello.</div>
+--
+type_ :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+type_ = attribute " type=\""                                                    -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE type_ #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @usemap@ attribute.
+--
+-- Example:
+--
+-- > div ! usemap "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div usemap="bar">Hello.</div>
+--
+usemap :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+usemap = attribute " usemap=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE usemap #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @valign@ attribute.
+--
+-- Example:
+--
+-- > div ! valign "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div valign="bar">Hello.</div>
+--
+valign :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+valign = attribute " valign=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE valign #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @value@ attribute.
+--
+-- Example:
+--
+-- > div ! value "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div value="bar">Hello.</div>
+--
+value :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+value = attribute " value=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE value #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @valuetype@ attribute.
+--
+-- Example:
+--
+-- > div ! valuetype "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div valuetype="bar">Hello.</div>
+--
+valuetype :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+valuetype = attribute " valuetype=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE valuetype #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @width@ attribute.
+--
+-- Example:
+--
+-- > div ! width "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div width="bar">Hello.</div>
+--
+width :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+width = attribute " width=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE width #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
diff --git a/Text/Blaze/Html4/Transitional.hs b/Text/Blaze/Html4/Transitional.hs
new file mode 100644
--- /dev/null
+++ b/Text/Blaze/Html4/Transitional.hs
@@ -0,0 +1,1433 @@
+-- WARNING: This code was automatically generated. You should *never*
+-- edit it directly. Instead, edit the files who generated this code,
+-- you can find them in the @util/@ directory.
+
+{-# LANGUAGE OverloadedStrings #-}                                              -- ./Util/GenerateHtmlCombinators.hs:78
+-- | This module exports HTML combinators used to create documents.
+--
+module Text.Blaze.Html4.Transitional                                            -- ./Util/GenerateHtmlCombinators.hs:151
+    ( module Text.Blaze                                                         -- ./Util/GenerateHtmlCombinators.hs:152
+    , docType                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , docTypeHtml                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , a                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , abbr                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , acronym                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , address                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , applet                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , area                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , b                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , basefont                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , bdo                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , big                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , blockquote                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , body                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , br                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , button                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , caption                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , center                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , cite                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , code                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , col                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , colgroup                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , dd                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , del                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , dfn                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , dir                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , div                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , dl                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , dt                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , em                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , fieldset                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , font                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , form                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , h1                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h2                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h3                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h4                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h5                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h6                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , head                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , hr                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , html                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , i                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , iframe                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , img                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , input                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , ins                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , isindex                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , kbd                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , label                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , legend                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , li                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , link                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , map                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , menu                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , meta                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , noframes                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , noscript                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , object                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , ol                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , optgroup                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , option                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , p                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , param                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , pre                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , q                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , s                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , samp                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , script                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , select                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , small                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , span                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , strong                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , style                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , sub                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , sup                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , table                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , tbody                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , td                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , textarea                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , tfoot                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , th                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , thead                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , title                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , tr                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , tt                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , u                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , ul                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , var                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    ) where                                                                     -- ./Util/GenerateHtmlCombinators.hs:155
+
+import Prelude ((>>), (.))                                                      -- ./Util/GenerateHtmlCombinators.hs:85
+                                                                                -- ./Util/GenerateHtmlCombinators.hs:86
+import Text.Blaze                                                               -- ./Util/GenerateHtmlCombinators.hs:87
+import Text.Blaze.Internal                                                      -- ./Util/GenerateHtmlCombinators.hs:88
+                                                                                -- ./Util/GenerateHtmlCombinators.hs:89
+-- | Combinator for the document type. This should be placed at the top
+-- of every HTML page.
+--
+-- Example:
+--
+-- > docType
+--
+-- Result:
+--
+-- > <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+-- >     "http://www.w3.org/TR/html4/loose.dtd">
+--
+docType :: Html  -- ^ The document type HTML.                                   -- ./Util/GenerateHtmlCombinators.hs:171
+docType = preEscapedText "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\"\n    \"http://www.w3.org/TR/html4/loose.dtd\">\n" -- ./Util/GenerateHtmlCombinators.hs:172
+{-# INLINE docType #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:173
+
+-- | Combinator for the @\<html>@ element. This combinator will also
+-- insert the correct doctype.
+--
+-- Example:
+--
+-- > docTypeHtml $ span $ text "foo"
+--
+-- Result:
+--
+-- > <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+-- >     "http://www.w3.org/TR/html4/loose.dtd">
+-- > <html><span>foo</span></html>
+--
+docTypeHtml :: Html  -- ^ Inner HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:192
+            -> Html  -- ^ Resulting HTML.                                       -- ./Util/GenerateHtmlCombinators.hs:193
+docTypeHtml inner = docType >> html inner                                       -- ./Util/GenerateHtmlCombinators.hs:194
+{-# INLINE docTypeHtml #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:195
+
+-- | Combinator for the @\<a>@ element.
+--
+-- Example:
+--
+-- > a $ span $ text "foo"
+--
+-- Result:
+--
+-- > <a><span>foo</span></a>
+--
+a :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+a = Parent "<a" "</a>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE a #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<abbr>@ element.
+--
+-- Example:
+--
+-- > abbr $ span $ text "foo"
+--
+-- Result:
+--
+-- > <abbr><span>foo</span></abbr>
+--
+abbr :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+abbr = Parent "<abbr" "</abbr>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE abbr #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<acronym>@ element.
+--
+-- Example:
+--
+-- > acronym $ span $ text "foo"
+--
+-- Result:
+--
+-- > <acronym><span>foo</span></acronym>
+--
+acronym :: Html  -- ^ Inner HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:212
+        -> Html  -- ^ Resulting HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:213
+acronym = Parent "<acronym" "</acronym>"                                        -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE acronym #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<address>@ element.
+--
+-- Example:
+--
+-- > address $ span $ text "foo"
+--
+-- Result:
+--
+-- > <address><span>foo</span></address>
+--
+address :: Html  -- ^ Inner HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:212
+        -> Html  -- ^ Resulting HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:213
+address = Parent "<address" "</address>"                                        -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE address #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<applet>@ element.
+--
+-- Example:
+--
+-- > applet $ span $ text "foo"
+--
+-- Result:
+--
+-- > <applet><span>foo</span></applet>
+--
+applet :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+applet = Parent "<applet" "</applet>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE applet #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<area />@ element.
+--
+-- Example:
+--
+-- > area
+--
+-- Result:
+--
+-- > <area />
+--
+area :: Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:238
+area = Leaf "<area" ">"                                                         -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE area #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<b>@ element.
+--
+-- Example:
+--
+-- > b $ span $ text "foo"
+--
+-- Result:
+--
+-- > <b><span>foo</span></b>
+--
+b :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+b = Parent "<b" "</b>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE b #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<basefont />@ element.
+--
+-- Example:
+--
+-- > basefont
+--
+-- Result:
+--
+-- > <basefont />
+--
+basefont :: Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:238
+basefont = Leaf "<basefont" ">"                                                 -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE basefont #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<bdo>@ element.
+--
+-- Example:
+--
+-- > bdo $ span $ text "foo"
+--
+-- Result:
+--
+-- > <bdo><span>foo</span></bdo>
+--
+bdo :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+bdo = Parent "<bdo" "</bdo>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE bdo #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<big>@ element.
+--
+-- Example:
+--
+-- > big $ span $ text "foo"
+--
+-- Result:
+--
+-- > <big><span>foo</span></big>
+--
+big :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+big = Parent "<big" "</big>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE big #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<blockquote>@ element.
+--
+-- Example:
+--
+-- > blockquote $ span $ text "foo"
+--
+-- Result:
+--
+-- > <blockquote><span>foo</span></blockquote>
+--
+blockquote :: Html  -- ^ Inner HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:212
+           -> Html  -- ^ Resulting HTML.                                        -- ./Util/GenerateHtmlCombinators.hs:213
+blockquote = Parent "<blockquote" "</blockquote>"                               -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE blockquote #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<body>@ element.
+--
+-- Example:
+--
+-- > body $ span $ text "foo"
+--
+-- Result:
+--
+-- > <body><span>foo</span></body>
+--
+body :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+body = Parent "<body" "</body>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE body #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<br />@ element.
+--
+-- Example:
+--
+-- > br
+--
+-- Result:
+--
+-- > <br />
+--
+br :: Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:238
+br = Leaf "<br" ">"                                                             -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE br #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<button>@ element.
+--
+-- Example:
+--
+-- > button $ span $ text "foo"
+--
+-- Result:
+--
+-- > <button><span>foo</span></button>
+--
+button :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+button = Parent "<button" "</button>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE button #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<caption>@ element.
+--
+-- Example:
+--
+-- > caption $ span $ text "foo"
+--
+-- Result:
+--
+-- > <caption><span>foo</span></caption>
+--
+caption :: Html  -- ^ Inner HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:212
+        -> Html  -- ^ Resulting HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:213
+caption = Parent "<caption" "</caption>"                                        -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE caption #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<center>@ element.
+--
+-- Example:
+--
+-- > center $ span $ text "foo"
+--
+-- Result:
+--
+-- > <center><span>foo</span></center>
+--
+center :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+center = Parent "<center" "</center>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE center #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<cite>@ element.
+--
+-- Example:
+--
+-- > cite $ span $ text "foo"
+--
+-- Result:
+--
+-- > <cite><span>foo</span></cite>
+--
+cite :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+cite = Parent "<cite" "</cite>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE cite #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<code>@ element.
+--
+-- Example:
+--
+-- > code $ span $ text "foo"
+--
+-- Result:
+--
+-- > <code><span>foo</span></code>
+--
+code :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+code = Parent "<code" "</code>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE code #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<col />@ element.
+--
+-- Example:
+--
+-- > col
+--
+-- Result:
+--
+-- > <col />
+--
+col :: Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:238
+col = Leaf "<col" ">"                                                           -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE col #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<colgroup>@ element.
+--
+-- Example:
+--
+-- > colgroup $ span $ text "foo"
+--
+-- Result:
+--
+-- > <colgroup><span>foo</span></colgroup>
+--
+colgroup :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+colgroup = Parent "<colgroup" "</colgroup>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE colgroup #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<dd>@ element.
+--
+-- Example:
+--
+-- > dd $ span $ text "foo"
+--
+-- Result:
+--
+-- > <dd><span>foo</span></dd>
+--
+dd :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+dd = Parent "<dd" "</dd>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE dd #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<del>@ element.
+--
+-- Example:
+--
+-- > del $ span $ text "foo"
+--
+-- Result:
+--
+-- > <del><span>foo</span></del>
+--
+del :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+del = Parent "<del" "</del>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE del #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<dfn>@ element.
+--
+-- Example:
+--
+-- > dfn $ span $ text "foo"
+--
+-- Result:
+--
+-- > <dfn><span>foo</span></dfn>
+--
+dfn :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+dfn = Parent "<dfn" "</dfn>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE dfn #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<dir>@ element.
+--
+-- Example:
+--
+-- > dir $ span $ text "foo"
+--
+-- Result:
+--
+-- > <dir><span>foo</span></dir>
+--
+dir :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+dir = Parent "<dir" "</dir>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE dir #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<div>@ element.
+--
+-- Example:
+--
+-- > div $ span $ text "foo"
+--
+-- Result:
+--
+-- > <div><span>foo</span></div>
+--
+div :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+div = Parent "<div" "</div>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE div #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<dl>@ element.
+--
+-- Example:
+--
+-- > dl $ span $ text "foo"
+--
+-- Result:
+--
+-- > <dl><span>foo</span></dl>
+--
+dl :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+dl = Parent "<dl" "</dl>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE dl #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<dt>@ element.
+--
+-- Example:
+--
+-- > dt $ span $ text "foo"
+--
+-- Result:
+--
+-- > <dt><span>foo</span></dt>
+--
+dt :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+dt = Parent "<dt" "</dt>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE dt #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<em>@ element.
+--
+-- Example:
+--
+-- > em $ span $ text "foo"
+--
+-- Result:
+--
+-- > <em><span>foo</span></em>
+--
+em :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+em = Parent "<em" "</em>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE em #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<fieldset>@ element.
+--
+-- Example:
+--
+-- > fieldset $ span $ text "foo"
+--
+-- Result:
+--
+-- > <fieldset><span>foo</span></fieldset>
+--
+fieldset :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+fieldset = Parent "<fieldset" "</fieldset>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE fieldset #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<font>@ element.
+--
+-- Example:
+--
+-- > font $ span $ text "foo"
+--
+-- Result:
+--
+-- > <font><span>foo</span></font>
+--
+font :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+font = Parent "<font" "</font>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE font #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<form>@ element.
+--
+-- Example:
+--
+-- > form $ span $ text "foo"
+--
+-- Result:
+--
+-- > <form><span>foo</span></form>
+--
+form :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+form = Parent "<form" "</form>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE form #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h1>@ element.
+--
+-- Example:
+--
+-- > h1 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h1><span>foo</span></h1>
+--
+h1 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h1 = Parent "<h1" "</h1>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h1 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h2>@ element.
+--
+-- Example:
+--
+-- > h2 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h2><span>foo</span></h2>
+--
+h2 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h2 = Parent "<h2" "</h2>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h2 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h3>@ element.
+--
+-- Example:
+--
+-- > h3 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h3><span>foo</span></h3>
+--
+h3 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h3 = Parent "<h3" "</h3>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h3 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h4>@ element.
+--
+-- Example:
+--
+-- > h4 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h4><span>foo</span></h4>
+--
+h4 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h4 = Parent "<h4" "</h4>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h4 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h5>@ element.
+--
+-- Example:
+--
+-- > h5 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h5><span>foo</span></h5>
+--
+h5 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h5 = Parent "<h5" "</h5>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h5 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h6>@ element.
+--
+-- Example:
+--
+-- > h6 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h6><span>foo</span></h6>
+--
+h6 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h6 = Parent "<h6" "</h6>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h6 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<head>@ element.
+--
+-- Example:
+--
+-- > head $ span $ text "foo"
+--
+-- Result:
+--
+-- > <head><span>foo</span></head>
+--
+head :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+head = Parent "<head" "</head>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE head #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<hr />@ element.
+--
+-- Example:
+--
+-- > hr
+--
+-- Result:
+--
+-- > <hr />
+--
+hr :: Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:238
+hr = Leaf "<hr" ">"                                                             -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE hr #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<html>@ element.
+--
+-- Example:
+--
+-- > html $ span $ text "foo"
+--
+-- Result:
+--
+-- > <html><span>foo</span></html>
+--
+html :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+html = Parent "<html" "</html>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE html #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<i>@ element.
+--
+-- Example:
+--
+-- > i $ span $ text "foo"
+--
+-- Result:
+--
+-- > <i><span>foo</span></i>
+--
+i :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+i = Parent "<i" "</i>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE i #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<iframe>@ element.
+--
+-- Example:
+--
+-- > iframe $ span $ text "foo"
+--
+-- Result:
+--
+-- > <iframe><span>foo</span></iframe>
+--
+iframe :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+iframe = Parent "<iframe" "</iframe>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE iframe #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<img />@ element.
+--
+-- Example:
+--
+-- > img
+--
+-- Result:
+--
+-- > <img />
+--
+img :: Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:238
+img = Leaf "<img" ">"                                                           -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE img #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<input />@ element.
+--
+-- Example:
+--
+-- > input
+--
+-- Result:
+--
+-- > <input />
+--
+input :: Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:238
+input = Leaf "<input" ">"                                                       -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE input #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<ins>@ element.
+--
+-- Example:
+--
+-- > ins $ span $ text "foo"
+--
+-- Result:
+--
+-- > <ins><span>foo</span></ins>
+--
+ins :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+ins = Parent "<ins" "</ins>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE ins #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<isindex>@ element.
+--
+-- Example:
+--
+-- > isindex $ span $ text "foo"
+--
+-- Result:
+--
+-- > <isindex><span>foo</span></isindex>
+--
+isindex :: Html  -- ^ Inner HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:212
+        -> Html  -- ^ Resulting HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:213
+isindex = Parent "<isindex" "</isindex>"                                        -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE isindex #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<kbd>@ element.
+--
+-- Example:
+--
+-- > kbd $ span $ text "foo"
+--
+-- Result:
+--
+-- > <kbd><span>foo</span></kbd>
+--
+kbd :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+kbd = Parent "<kbd" "</kbd>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE kbd #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<label>@ element.
+--
+-- Example:
+--
+-- > label $ span $ text "foo"
+--
+-- Result:
+--
+-- > <label><span>foo</span></label>
+--
+label :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+label = Parent "<label" "</label>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE label #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<legend>@ element.
+--
+-- Example:
+--
+-- > legend $ span $ text "foo"
+--
+-- Result:
+--
+-- > <legend><span>foo</span></legend>
+--
+legend :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+legend = Parent "<legend" "</legend>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE legend #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<li>@ element.
+--
+-- Example:
+--
+-- > li $ span $ text "foo"
+--
+-- Result:
+--
+-- > <li><span>foo</span></li>
+--
+li :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+li = Parent "<li" "</li>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE li #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<link />@ element.
+--
+-- Example:
+--
+-- > link
+--
+-- Result:
+--
+-- > <link />
+--
+link :: Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:238
+link = Leaf "<link" ">"                                                         -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE link #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<map>@ element.
+--
+-- Example:
+--
+-- > map $ span $ text "foo"
+--
+-- Result:
+--
+-- > <map><span>foo</span></map>
+--
+map :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+map = Parent "<map" "</map>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE map #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<menu>@ element.
+--
+-- Example:
+--
+-- > menu $ span $ text "foo"
+--
+-- Result:
+--
+-- > <menu><span>foo</span></menu>
+--
+menu :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+menu = Parent "<menu" "</menu>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE menu #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<meta />@ element.
+--
+-- Example:
+--
+-- > meta
+--
+-- Result:
+--
+-- > <meta />
+--
+meta :: Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:238
+meta = Leaf "<meta" ">"                                                         -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE meta #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<noframes>@ element.
+--
+-- Example:
+--
+-- > noframes $ span $ text "foo"
+--
+-- Result:
+--
+-- > <noframes><span>foo</span></noframes>
+--
+noframes :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+noframes = Parent "<noframes" "</noframes>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE noframes #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<noscript>@ element.
+--
+-- Example:
+--
+-- > noscript $ span $ text "foo"
+--
+-- Result:
+--
+-- > <noscript><span>foo</span></noscript>
+--
+noscript :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+noscript = Parent "<noscript" "</noscript>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE noscript #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<object>@ element.
+--
+-- Example:
+--
+-- > object $ span $ text "foo"
+--
+-- Result:
+--
+-- > <object><span>foo</span></object>
+--
+object :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+object = Parent "<object" "</object>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE object #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<ol>@ element.
+--
+-- Example:
+--
+-- > ol $ span $ text "foo"
+--
+-- Result:
+--
+-- > <ol><span>foo</span></ol>
+--
+ol :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+ol = Parent "<ol" "</ol>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE ol #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<optgroup>@ element.
+--
+-- Example:
+--
+-- > optgroup $ span $ text "foo"
+--
+-- Result:
+--
+-- > <optgroup><span>foo</span></optgroup>
+--
+optgroup :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+optgroup = Parent "<optgroup" "</optgroup>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE optgroup #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<option>@ element.
+--
+-- Example:
+--
+-- > option $ span $ text "foo"
+--
+-- Result:
+--
+-- > <option><span>foo</span></option>
+--
+option :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+option = Parent "<option" "</option>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE option #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<p>@ element.
+--
+-- Example:
+--
+-- > p $ span $ text "foo"
+--
+-- Result:
+--
+-- > <p><span>foo</span></p>
+--
+p :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+p = Parent "<p" "</p>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE p #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<param />@ element.
+--
+-- Example:
+--
+-- > param
+--
+-- Result:
+--
+-- > <param />
+--
+param :: Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:238
+param = Leaf "<param" ">"                                                       -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE param #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<pre>@ element.
+--
+-- Example:
+--
+-- > pre $ span $ text "foo"
+--
+-- Result:
+--
+-- > <pre><span>foo</span></pre>
+--
+pre :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+pre = Parent "<pre" "</pre>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE pre #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<q>@ element.
+--
+-- Example:
+--
+-- > q $ span $ text "foo"
+--
+-- Result:
+--
+-- > <q><span>foo</span></q>
+--
+q :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+q = Parent "<q" "</q>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE q #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<s>@ element.
+--
+-- Example:
+--
+-- > s $ span $ text "foo"
+--
+-- Result:
+--
+-- > <s><span>foo</span></s>
+--
+s :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+s = Parent "<s" "</s>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE s #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<samp>@ element.
+--
+-- Example:
+--
+-- > samp $ span $ text "foo"
+--
+-- Result:
+--
+-- > <samp><span>foo</span></samp>
+--
+samp :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+samp = Parent "<samp" "</samp>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE samp #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<script>@ element.
+--
+-- Example:
+--
+-- > script $ span $ text "foo"
+--
+-- Result:
+--
+-- > <script><span>foo</span></script>
+--
+script :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+script = Parent "<script" "</script>" . external                                -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE script #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<select>@ element.
+--
+-- Example:
+--
+-- > select $ span $ text "foo"
+--
+-- Result:
+--
+-- > <select><span>foo</span></select>
+--
+select :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+select = Parent "<select" "</select>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE select #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<small>@ element.
+--
+-- Example:
+--
+-- > small $ span $ text "foo"
+--
+-- Result:
+--
+-- > <small><span>foo</span></small>
+--
+small :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+small = Parent "<small" "</small>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE small #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<span>@ element.
+--
+-- Example:
+--
+-- > span $ span $ text "foo"
+--
+-- Result:
+--
+-- > <span><span>foo</span></span>
+--
+span :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+span = Parent "<span" "</span>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE span #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<strong>@ element.
+--
+-- Example:
+--
+-- > strong $ span $ text "foo"
+--
+-- Result:
+--
+-- > <strong><span>foo</span></strong>
+--
+strong :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+strong = Parent "<strong" "</strong>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE strong #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<style>@ element.
+--
+-- Example:
+--
+-- > style $ span $ text "foo"
+--
+-- Result:
+--
+-- > <style><span>foo</span></style>
+--
+style :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+style = Parent "<style" "</style>" . external                                   -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE style #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<sub>@ element.
+--
+-- Example:
+--
+-- > sub $ span $ text "foo"
+--
+-- Result:
+--
+-- > <sub><span>foo</span></sub>
+--
+sub :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+sub = Parent "<sub" "</sub>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE sub #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<sup>@ element.
+--
+-- Example:
+--
+-- > sup $ span $ text "foo"
+--
+-- Result:
+--
+-- > <sup><span>foo</span></sup>
+--
+sup :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+sup = Parent "<sup" "</sup>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE sup #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<table>@ element.
+--
+-- Example:
+--
+-- > table $ span $ text "foo"
+--
+-- Result:
+--
+-- > <table><span>foo</span></table>
+--
+table :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+table = Parent "<table" "</table>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE table #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<tbody>@ element.
+--
+-- Example:
+--
+-- > tbody $ span $ text "foo"
+--
+-- Result:
+--
+-- > <tbody><span>foo</span></tbody>
+--
+tbody :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+tbody = Parent "<tbody" "</tbody>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE tbody #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<td>@ element.
+--
+-- Example:
+--
+-- > td $ span $ text "foo"
+--
+-- Result:
+--
+-- > <td><span>foo</span></td>
+--
+td :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+td = Parent "<td" "</td>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE td #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<textarea>@ element.
+--
+-- Example:
+--
+-- > textarea $ span $ text "foo"
+--
+-- Result:
+--
+-- > <textarea><span>foo</span></textarea>
+--
+textarea :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+textarea = Parent "<textarea" "</textarea>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE textarea #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<tfoot>@ element.
+--
+-- Example:
+--
+-- > tfoot $ span $ text "foo"
+--
+-- Result:
+--
+-- > <tfoot><span>foo</span></tfoot>
+--
+tfoot :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+tfoot = Parent "<tfoot" "</tfoot>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE tfoot #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<th>@ element.
+--
+-- Example:
+--
+-- > th $ span $ text "foo"
+--
+-- Result:
+--
+-- > <th><span>foo</span></th>
+--
+th :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+th = Parent "<th" "</th>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE th #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<thead>@ element.
+--
+-- Example:
+--
+-- > thead $ span $ text "foo"
+--
+-- Result:
+--
+-- > <thead><span>foo</span></thead>
+--
+thead :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+thead = Parent "<thead" "</thead>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE thead #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<title>@ element.
+--
+-- Example:
+--
+-- > title $ span $ text "foo"
+--
+-- Result:
+--
+-- > <title><span>foo</span></title>
+--
+title :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+title = Parent "<title" "</title>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE title #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<tr>@ element.
+--
+-- Example:
+--
+-- > tr $ span $ text "foo"
+--
+-- Result:
+--
+-- > <tr><span>foo</span></tr>
+--
+tr :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+tr = Parent "<tr" "</tr>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE tr #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<tt>@ element.
+--
+-- Example:
+--
+-- > tt $ span $ text "foo"
+--
+-- Result:
+--
+-- > <tt><span>foo</span></tt>
+--
+tt :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+tt = Parent "<tt" "</tt>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE tt #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<u>@ element.
+--
+-- Example:
+--
+-- > u $ span $ text "foo"
+--
+-- Result:
+--
+-- > <u><span>foo</span></u>
+--
+u :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+u = Parent "<u" "</u>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE u #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<ul>@ element.
+--
+-- Example:
+--
+-- > ul $ span $ text "foo"
+--
+-- Result:
+--
+-- > <ul><span>foo</span></ul>
+--
+ul :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+ul = Parent "<ul" "</ul>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE ul #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<var>@ element.
+--
+-- Example:
+--
+-- > var $ span $ text "foo"
+--
+-- Result:
+--
+-- > <var><span>foo</span></var>
+--
+var :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+var = Parent "<var" "</var>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE var #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
diff --git a/Text/Blaze/Html4/Transitional/Attributes.hs b/Text/Blaze/Html4/Transitional/Attributes.hs
new file mode 100644
--- /dev/null
+++ b/Text/Blaze/Html4/Transitional/Attributes.hs
@@ -0,0 +1,1646 @@
+-- WARNING: This code was automatically generated. You should *never*
+-- edit it directly. Instead, edit the files who generated this code,
+-- you can find them in the @util/@ directory.
+
+-- | This module exports combinators that provide you with the
+-- ability to set attributes on HTML elements.
+--
+{-# LANGUAGE OverloadedStrings #-}                                              -- ./Util/GenerateHtmlCombinators.hs:103
+module Text.Blaze.Html4.Transitional.Attributes                                 -- ./Util/GenerateHtmlCombinators.hs:151
+    ( abbr                                                                      -- ./Util/GenerateHtmlCombinators.hs:152
+    , accept                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , accesskey                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , action                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , align                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , alt                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , archive                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , axis                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , background                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , bgcolor                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , border                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , cellpadding                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , cellspacing                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , char                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , charoff                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , charset                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , checked                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , cite                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , class_                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , classid                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , clear                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , codebase                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , codetype                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , cols                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , colspan                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , compact                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , content                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , coords                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , data_                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , datetime                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , declare                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , defer                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , dir                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , disabled                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , enctype                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , for                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , frame                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , headers                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , height                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , href                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , hreflang                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , hspace                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , http_equiv                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , id                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , label                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , lang                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , language                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , maxlength                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , media                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , method                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , multiple                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , name                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , nohref                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , noshade                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , nowrap                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , onabort                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , onblur                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , onchange                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , onclick                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , ondblclick                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , onfocus                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , onkeydown                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , onkeypress                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , onkeyup                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , onload                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmousedown                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmousemove                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmouseout                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmouseover                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmouseup                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , onreset                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , onselect                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , onsubmit                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , onunload                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , profile                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , readonly                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , rel                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , rev                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , rows                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , rowspan                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , rules                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , scheme                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , scope                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , selected                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , shape                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , size                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , span                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , src                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , standby                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , start                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , style                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , summary                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , tabindex                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , target                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , title                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , type_                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , usemap                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , valign                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , value                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , valuetype                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , vspace                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , width                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    ) where                                                                     -- ./Util/GenerateHtmlCombinators.hs:155
+
+import Prelude ()                                                               -- ./Util/GenerateHtmlCombinators.hs:105
+                                                                                -- ./Util/GenerateHtmlCombinators.hs:106
+import Text.Blaze.Internal (Attribute, AttributeValue, attribute)               -- ./Util/GenerateHtmlCombinators.hs:107
+                                                                                -- ./Util/GenerateHtmlCombinators.hs:108
+-- | Combinator for the @abbr@ attribute.
+--
+-- Example:
+--
+-- > div ! abbr "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div abbr="bar">Hello.</div>
+--
+abbr :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+abbr = attribute " abbr=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE abbr #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @accept@ attribute.
+--
+-- Example:
+--
+-- > div ! accept "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div accept="bar">Hello.</div>
+--
+accept :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+accept = attribute " accept=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE accept #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @accesskey@ attribute.
+--
+-- Example:
+--
+-- > div ! accesskey "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div accesskey="bar">Hello.</div>
+--
+accesskey :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+accesskey = attribute " accesskey=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE accesskey #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @action@ attribute.
+--
+-- Example:
+--
+-- > div ! action "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div action="bar">Hello.</div>
+--
+action :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+action = attribute " action=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE action #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @align@ attribute.
+--
+-- Example:
+--
+-- > div ! align "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div align="bar">Hello.</div>
+--
+align :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+align = attribute " align=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE align #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @alt@ attribute.
+--
+-- Example:
+--
+-- > div ! alt "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div alt="bar">Hello.</div>
+--
+alt :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+alt = attribute " alt=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE alt #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @archive@ attribute.
+--
+-- Example:
+--
+-- > div ! archive "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div archive="bar">Hello.</div>
+--
+archive :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+archive = attribute " archive=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE archive #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @axis@ attribute.
+--
+-- Example:
+--
+-- > div ! axis "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div axis="bar">Hello.</div>
+--
+axis :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+axis = attribute " axis=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE axis #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @background@ attribute.
+--
+-- Example:
+--
+-- > div ! background "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div background="bar">Hello.</div>
+--
+background :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+background = attribute " background=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE background #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @bgcolor@ attribute.
+--
+-- Example:
+--
+-- > div ! bgcolor "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div bgcolor="bar">Hello.</div>
+--
+bgcolor :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+bgcolor = attribute " bgcolor=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE bgcolor #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @border@ attribute.
+--
+-- Example:
+--
+-- > div ! border "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div border="bar">Hello.</div>
+--
+border :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+border = attribute " border=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE border #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @cellpadding@ attribute.
+--
+-- Example:
+--
+-- > div ! cellpadding "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div cellpadding="bar">Hello.</div>
+--
+cellpadding :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+cellpadding = attribute " cellpadding=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE cellpadding #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @cellspacing@ attribute.
+--
+-- Example:
+--
+-- > div ! cellspacing "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div cellspacing="bar">Hello.</div>
+--
+cellspacing :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+cellspacing = attribute " cellspacing=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE cellspacing #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @char@ attribute.
+--
+-- Example:
+--
+-- > div ! char "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div char="bar">Hello.</div>
+--
+char :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+char = attribute " char=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE char #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @charoff@ attribute.
+--
+-- Example:
+--
+-- > div ! charoff "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div charoff="bar">Hello.</div>
+--
+charoff :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+charoff = attribute " charoff=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE charoff #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @charset@ attribute.
+--
+-- Example:
+--
+-- > div ! charset "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div charset="bar">Hello.</div>
+--
+charset :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+charset = attribute " charset=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE charset #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @checked@ attribute.
+--
+-- Example:
+--
+-- > div ! checked "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div checked="bar">Hello.</div>
+--
+checked :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+checked = attribute " checked=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE checked #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @cite@ attribute.
+--
+-- Example:
+--
+-- > div ! cite "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div cite="bar">Hello.</div>
+--
+cite :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+cite = attribute " cite=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE cite #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @class@ attribute.
+--
+-- Example:
+--
+-- > div ! class_ "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div class="bar">Hello.</div>
+--
+class_ :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+class_ = attribute " class=\""                                                  -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE class_ #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @classid@ attribute.
+--
+-- Example:
+--
+-- > div ! classid "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div classid="bar">Hello.</div>
+--
+classid :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+classid = attribute " classid=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE classid #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @clear@ attribute.
+--
+-- Example:
+--
+-- > div ! clear "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div clear="bar">Hello.</div>
+--
+clear :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+clear = attribute " clear=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE clear #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @codebase@ attribute.
+--
+-- Example:
+--
+-- > div ! codebase "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div codebase="bar">Hello.</div>
+--
+codebase :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+codebase = attribute " codebase=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE codebase #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @codetype@ attribute.
+--
+-- Example:
+--
+-- > div ! codetype "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div codetype="bar">Hello.</div>
+--
+codetype :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+codetype = attribute " codetype=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE codetype #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @cols@ attribute.
+--
+-- Example:
+--
+-- > div ! cols "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div cols="bar">Hello.</div>
+--
+cols :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+cols = attribute " cols=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE cols #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @colspan@ attribute.
+--
+-- Example:
+--
+-- > div ! colspan "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div colspan="bar">Hello.</div>
+--
+colspan :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+colspan = attribute " colspan=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE colspan #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @compact@ attribute.
+--
+-- Example:
+--
+-- > div ! compact "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div compact="bar">Hello.</div>
+--
+compact :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+compact = attribute " compact=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE compact #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @content@ attribute.
+--
+-- Example:
+--
+-- > div ! content "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div content="bar">Hello.</div>
+--
+content :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+content = attribute " content=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE content #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @coords@ attribute.
+--
+-- Example:
+--
+-- > div ! coords "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div coords="bar">Hello.</div>
+--
+coords :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+coords = attribute " coords=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE coords #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @data@ attribute.
+--
+-- Example:
+--
+-- > div ! data_ "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div data="bar">Hello.</div>
+--
+data_ :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+data_ = attribute " data=\""                                                    -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE data_ #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @datetime@ attribute.
+--
+-- Example:
+--
+-- > div ! datetime "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div datetime="bar">Hello.</div>
+--
+datetime :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+datetime = attribute " datetime=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE datetime #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @declare@ attribute.
+--
+-- Example:
+--
+-- > div ! declare "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div declare="bar">Hello.</div>
+--
+declare :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+declare = attribute " declare=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE declare #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @defer@ attribute.
+--
+-- Example:
+--
+-- > div ! defer "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div defer="bar">Hello.</div>
+--
+defer :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+defer = attribute " defer=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE defer #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @dir@ attribute.
+--
+-- Example:
+--
+-- > div ! dir "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div dir="bar">Hello.</div>
+--
+dir :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+dir = attribute " dir=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE dir #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @disabled@ attribute.
+--
+-- Example:
+--
+-- > div ! disabled "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div disabled="bar">Hello.</div>
+--
+disabled :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+disabled = attribute " disabled=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE disabled #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @enctype@ attribute.
+--
+-- Example:
+--
+-- > div ! enctype "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div enctype="bar">Hello.</div>
+--
+enctype :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+enctype = attribute " enctype=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE enctype #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @for@ attribute.
+--
+-- Example:
+--
+-- > div ! for "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div for="bar">Hello.</div>
+--
+for :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+for = attribute " for=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE for #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @frame@ attribute.
+--
+-- Example:
+--
+-- > div ! frame "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div frame="bar">Hello.</div>
+--
+frame :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+frame = attribute " frame=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE frame #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @headers@ attribute.
+--
+-- Example:
+--
+-- > div ! headers "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div headers="bar">Hello.</div>
+--
+headers :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+headers = attribute " headers=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE headers #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @height@ attribute.
+--
+-- Example:
+--
+-- > div ! height "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div height="bar">Hello.</div>
+--
+height :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+height = attribute " height=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE height #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @href@ attribute.
+--
+-- Example:
+--
+-- > div ! href "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div href="bar">Hello.</div>
+--
+href :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+href = attribute " href=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE href #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @hreflang@ attribute.
+--
+-- Example:
+--
+-- > div ! hreflang "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div hreflang="bar">Hello.</div>
+--
+hreflang :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+hreflang = attribute " hreflang=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE hreflang #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @hspace@ attribute.
+--
+-- Example:
+--
+-- > div ! hspace "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div hspace="bar">Hello.</div>
+--
+hspace :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+hspace = attribute " hspace=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE hspace #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @http-equiv@ attribute.
+--
+-- Example:
+--
+-- > div ! http_equiv "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div http-equiv="bar">Hello.</div>
+--
+http_equiv :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+http_equiv = attribute " http-equiv=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE http_equiv #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @id@ attribute.
+--
+-- Example:
+--
+-- > div ! id "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div id="bar">Hello.</div>
+--
+id :: AttributeValue  -- ^ Attribute value.                                     -- ./Util/GenerateHtmlCombinators.hs:260
+   -> Attribute       -- ^ Resulting attribute.                                 -- ./Util/GenerateHtmlCombinators.hs:261
+id = attribute " id=\""                                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE id #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @label@ attribute.
+--
+-- Example:
+--
+-- > div ! label "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div label="bar">Hello.</div>
+--
+label :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+label = attribute " label=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE label #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @lang@ attribute.
+--
+-- Example:
+--
+-- > div ! lang "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div lang="bar">Hello.</div>
+--
+lang :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+lang = attribute " lang=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE lang #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @language@ attribute.
+--
+-- Example:
+--
+-- > div ! language "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div language="bar">Hello.</div>
+--
+language :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+language = attribute " language=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE language #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @maxlength@ attribute.
+--
+-- Example:
+--
+-- > div ! maxlength "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div maxlength="bar">Hello.</div>
+--
+maxlength :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+maxlength = attribute " maxlength=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE maxlength #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @media@ attribute.
+--
+-- Example:
+--
+-- > div ! media "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div media="bar">Hello.</div>
+--
+media :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+media = attribute " media=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE media #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @method@ attribute.
+--
+-- Example:
+--
+-- > div ! method "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div method="bar">Hello.</div>
+--
+method :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+method = attribute " method=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE method #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @multiple@ attribute.
+--
+-- Example:
+--
+-- > div ! multiple "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div multiple="bar">Hello.</div>
+--
+multiple :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+multiple = attribute " multiple=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE multiple #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @name@ attribute.
+--
+-- Example:
+--
+-- > div ! name "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div name="bar">Hello.</div>
+--
+name :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+name = attribute " name=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE name #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @nohref@ attribute.
+--
+-- Example:
+--
+-- > div ! nohref "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div nohref="bar">Hello.</div>
+--
+nohref :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+nohref = attribute " nohref=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE nohref #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @noshade@ attribute.
+--
+-- Example:
+--
+-- > div ! noshade "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div noshade="bar">Hello.</div>
+--
+noshade :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+noshade = attribute " noshade=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE noshade #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @nowrap@ attribute.
+--
+-- Example:
+--
+-- > div ! nowrap "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div nowrap="bar">Hello.</div>
+--
+nowrap :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+nowrap = attribute " nowrap=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE nowrap #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onabort@ attribute.
+--
+-- Example:
+--
+-- > div ! onabort "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onabort="bar">Hello.</div>
+--
+onabort :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onabort = attribute " onabort=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onabort #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onblur@ attribute.
+--
+-- Example:
+--
+-- > div ! onblur "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onblur="bar">Hello.</div>
+--
+onblur :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+onblur = attribute " onblur=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onblur #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onchange@ attribute.
+--
+-- Example:
+--
+-- > div ! onchange "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onchange="bar">Hello.</div>
+--
+onchange :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onchange = attribute " onchange=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onchange #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onclick@ attribute.
+--
+-- Example:
+--
+-- > div ! onclick "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onclick="bar">Hello.</div>
+--
+onclick :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onclick = attribute " onclick=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onclick #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @ondblclick@ attribute.
+--
+-- Example:
+--
+-- > div ! ondblclick "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div ondblclick="bar">Hello.</div>
+--
+ondblclick :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+ondblclick = attribute " ondblclick=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE ondblclick #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onfocus@ attribute.
+--
+-- Example:
+--
+-- > div ! onfocus "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onfocus="bar">Hello.</div>
+--
+onfocus :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onfocus = attribute " onfocus=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onfocus #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onkeydown@ attribute.
+--
+-- Example:
+--
+-- > div ! onkeydown "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onkeydown="bar">Hello.</div>
+--
+onkeydown :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+onkeydown = attribute " onkeydown=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onkeydown #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onkeypress@ attribute.
+--
+-- Example:
+--
+-- > div ! onkeypress "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onkeypress="bar">Hello.</div>
+--
+onkeypress :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+onkeypress = attribute " onkeypress=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onkeypress #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onkeyup@ attribute.
+--
+-- Example:
+--
+-- > div ! onkeyup "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onkeyup="bar">Hello.</div>
+--
+onkeyup :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onkeyup = attribute " onkeyup=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onkeyup #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onload@ attribute.
+--
+-- Example:
+--
+-- > div ! onload "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onload="bar">Hello.</div>
+--
+onload :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+onload = attribute " onload=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onload #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmousedown@ attribute.
+--
+-- Example:
+--
+-- > div ! onmousedown "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmousedown="bar">Hello.</div>
+--
+onmousedown :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+onmousedown = attribute " onmousedown=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmousedown #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmousemove@ attribute.
+--
+-- Example:
+--
+-- > div ! onmousemove "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmousemove="bar">Hello.</div>
+--
+onmousemove :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+onmousemove = attribute " onmousemove=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmousemove #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmouseout@ attribute.
+--
+-- Example:
+--
+-- > div ! onmouseout "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmouseout="bar">Hello.</div>
+--
+onmouseout :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+onmouseout = attribute " onmouseout=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmouseout #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmouseover@ attribute.
+--
+-- Example:
+--
+-- > div ! onmouseover "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmouseover="bar">Hello.</div>
+--
+onmouseover :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+onmouseover = attribute " onmouseover=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmouseover #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmouseup@ attribute.
+--
+-- Example:
+--
+-- > div ! onmouseup "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmouseup="bar">Hello.</div>
+--
+onmouseup :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+onmouseup = attribute " onmouseup=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmouseup #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onreset@ attribute.
+--
+-- Example:
+--
+-- > div ! onreset "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onreset="bar">Hello.</div>
+--
+onreset :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onreset = attribute " onreset=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onreset #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onselect@ attribute.
+--
+-- Example:
+--
+-- > div ! onselect "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onselect="bar">Hello.</div>
+--
+onselect :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onselect = attribute " onselect=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onselect #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onsubmit@ attribute.
+--
+-- Example:
+--
+-- > div ! onsubmit "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onsubmit="bar">Hello.</div>
+--
+onsubmit :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onsubmit = attribute " onsubmit=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onsubmit #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onunload@ attribute.
+--
+-- Example:
+--
+-- > div ! onunload "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onunload="bar">Hello.</div>
+--
+onunload :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onunload = attribute " onunload=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onunload #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @profile@ attribute.
+--
+-- Example:
+--
+-- > div ! profile "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div profile="bar">Hello.</div>
+--
+profile :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+profile = attribute " profile=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE profile #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @readonly@ attribute.
+--
+-- Example:
+--
+-- > div ! readonly "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div readonly="bar">Hello.</div>
+--
+readonly :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+readonly = attribute " readonly=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE readonly #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @rel@ attribute.
+--
+-- Example:
+--
+-- > div ! rel "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div rel="bar">Hello.</div>
+--
+rel :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+rel = attribute " rel=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE rel #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @rev@ attribute.
+--
+-- Example:
+--
+-- > div ! rev "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div rev="bar">Hello.</div>
+--
+rev :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+rev = attribute " rev=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE rev #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @rows@ attribute.
+--
+-- Example:
+--
+-- > div ! rows "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div rows="bar">Hello.</div>
+--
+rows :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+rows = attribute " rows=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE rows #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @rowspan@ attribute.
+--
+-- Example:
+--
+-- > div ! rowspan "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div rowspan="bar">Hello.</div>
+--
+rowspan :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+rowspan = attribute " rowspan=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE rowspan #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @rules@ attribute.
+--
+-- Example:
+--
+-- > div ! rules "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div rules="bar">Hello.</div>
+--
+rules :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+rules = attribute " rules=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE rules #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @scheme@ attribute.
+--
+-- Example:
+--
+-- > div ! scheme "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div scheme="bar">Hello.</div>
+--
+scheme :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+scheme = attribute " scheme=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE scheme #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @scope@ attribute.
+--
+-- Example:
+--
+-- > div ! scope "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div scope="bar">Hello.</div>
+--
+scope :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+scope = attribute " scope=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE scope #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @selected@ attribute.
+--
+-- Example:
+--
+-- > div ! selected "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div selected="bar">Hello.</div>
+--
+selected :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+selected = attribute " selected=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE selected #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @shape@ attribute.
+--
+-- Example:
+--
+-- > div ! shape "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div shape="bar">Hello.</div>
+--
+shape :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+shape = attribute " shape=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE shape #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @size@ attribute.
+--
+-- Example:
+--
+-- > div ! size "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div size="bar">Hello.</div>
+--
+size :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+size = attribute " size=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE size #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @span@ attribute.
+--
+-- Example:
+--
+-- > div ! span "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div span="bar">Hello.</div>
+--
+span :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+span = attribute " span=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE span #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @src@ attribute.
+--
+-- Example:
+--
+-- > div ! src "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div src="bar">Hello.</div>
+--
+src :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+src = attribute " src=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE src #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @standby@ attribute.
+--
+-- Example:
+--
+-- > div ! standby "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div standby="bar">Hello.</div>
+--
+standby :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+standby = attribute " standby=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE standby #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @start@ attribute.
+--
+-- Example:
+--
+-- > div ! start "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div start="bar">Hello.</div>
+--
+start :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+start = attribute " start=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE start #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @style@ attribute.
+--
+-- Example:
+--
+-- > div ! style "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div style="bar">Hello.</div>
+--
+style :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+style = attribute " style=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE style #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @summary@ attribute.
+--
+-- Example:
+--
+-- > div ! summary "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div summary="bar">Hello.</div>
+--
+summary :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+summary = attribute " summary=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE summary #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @tabindex@ attribute.
+--
+-- Example:
+--
+-- > div ! tabindex "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div tabindex="bar">Hello.</div>
+--
+tabindex :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+tabindex = attribute " tabindex=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE tabindex #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @target@ attribute.
+--
+-- Example:
+--
+-- > div ! target "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div target="bar">Hello.</div>
+--
+target :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+target = attribute " target=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE target #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @title@ attribute.
+--
+-- Example:
+--
+-- > div ! title "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div title="bar">Hello.</div>
+--
+title :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+title = attribute " title=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE title #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @type@ attribute.
+--
+-- Example:
+--
+-- > div ! type_ "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div type="bar">Hello.</div>
+--
+type_ :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+type_ = attribute " type=\""                                                    -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE type_ #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @usemap@ attribute.
+--
+-- Example:
+--
+-- > div ! usemap "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div usemap="bar">Hello.</div>
+--
+usemap :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+usemap = attribute " usemap=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE usemap #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @valign@ attribute.
+--
+-- Example:
+--
+-- > div ! valign "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div valign="bar">Hello.</div>
+--
+valign :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+valign = attribute " valign=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE valign #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @value@ attribute.
+--
+-- Example:
+--
+-- > div ! value "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div value="bar">Hello.</div>
+--
+value :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+value = attribute " value=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE value #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @valuetype@ attribute.
+--
+-- Example:
+--
+-- > div ! valuetype "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div valuetype="bar">Hello.</div>
+--
+valuetype :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+valuetype = attribute " valuetype=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE valuetype #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @vspace@ attribute.
+--
+-- Example:
+--
+-- > div ! vspace "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div vspace="bar">Hello.</div>
+--
+vspace :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+vspace = attribute " vspace=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE vspace #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @width@ attribute.
+--
+-- Example:
+--
+-- > div ! width "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div width="bar">Hello.</div>
+--
+width :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+width = attribute " width=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE width #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
diff --git a/Text/Blaze/Html5.hs b/Text/Blaze/Html5.hs
new file mode 100644
--- /dev/null
+++ b/Text/Blaze/Html5.hs
@@ -0,0 +1,1687 @@
+-- WARNING: This code was automatically generated. You should *never*
+-- edit it directly. Instead, edit the files who generated this code,
+-- you can find them in the @util/@ directory.
+
+{-# LANGUAGE OverloadedStrings #-}                                              -- ./Util/GenerateHtmlCombinators.hs:78
+-- | This module exports HTML combinators used to create documents.
+--
+module Text.Blaze.Html5                                                         -- ./Util/GenerateHtmlCombinators.hs:151
+    ( module Text.Blaze                                                         -- ./Util/GenerateHtmlCombinators.hs:152
+    , docType                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , docTypeHtml                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , a                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , abbr                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , address                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , area                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , article                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , aside                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , audio                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , b                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , base                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , bdo                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , blockquote                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , body                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , br                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , button                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , canvas                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , caption                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , cite                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , code                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , col                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , colgroup                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , command                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , datalist                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , dd                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , del                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , details                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , dfn                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , div                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , dl                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , dt                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , em                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , embed                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , fieldset                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , figcaption                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , figure                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , footer                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , form                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , h1                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h2                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h3                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h4                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h5                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , h6                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , head                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , header                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , hgroup                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , hr                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , html                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , i                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , iframe                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , img                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , input                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , ins                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , kbd                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , keygen                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , label                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , legend                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , li                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , link                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , map                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , mark                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , menu                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , meta                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , meter                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , nav                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , noscript                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , object                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , ol                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , optgroup                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , option                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , output                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , p                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , param                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , pre                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , progress                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , q                                                                         -- ./Util/GenerateHtmlCombinators.hs:154
+    , rp                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , rt                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , ruby                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , samp                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , script                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , section                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , select                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , small                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , source                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , span                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , strong                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , style                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , sub                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , summary                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , sup                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , table                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , tbody                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , td                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , textarea                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , tfoot                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , th                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , thead                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , time                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , title                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , tr                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , ul                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , var                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , video                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    ) where                                                                     -- ./Util/GenerateHtmlCombinators.hs:155
+
+import Prelude ((>>), (.))                                                      -- ./Util/GenerateHtmlCombinators.hs:85
+                                                                                -- ./Util/GenerateHtmlCombinators.hs:86
+import Text.Blaze                                                               -- ./Util/GenerateHtmlCombinators.hs:87
+import Text.Blaze.Internal                                                      -- ./Util/GenerateHtmlCombinators.hs:88
+                                                                                -- ./Util/GenerateHtmlCombinators.hs:89
+-- | Combinator for the document type. This should be placed at the top
+-- of every HTML page.
+--
+-- Example:
+--
+-- > docType
+--
+-- Result:
+--
+-- > <!DOCTYPE HTML>
+--
+docType :: Html  -- ^ The document type HTML.                                   -- ./Util/GenerateHtmlCombinators.hs:171
+docType = preEscapedText "<!DOCTYPE HTML>\n"                                    -- ./Util/GenerateHtmlCombinators.hs:172
+{-# INLINE docType #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:173
+
+-- | Combinator for the @\<html>@ element. This combinator will also
+-- insert the correct doctype.
+--
+-- Example:
+--
+-- > docTypeHtml $ span $ text "foo"
+--
+-- Result:
+--
+-- > <!DOCTYPE HTML>
+-- > <html><span>foo</span></html>
+--
+docTypeHtml :: Html  -- ^ Inner HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:192
+            -> Html  -- ^ Resulting HTML.                                       -- ./Util/GenerateHtmlCombinators.hs:193
+docTypeHtml inner = docType >> html inner                                       -- ./Util/GenerateHtmlCombinators.hs:194
+{-# INLINE docTypeHtml #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:195
+
+-- | Combinator for the @\<a>@ element.
+--
+-- Example:
+--
+-- > a $ span $ text "foo"
+--
+-- Result:
+--
+-- > <a><span>foo</span></a>
+--
+a :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+a = Parent "<a" "</a>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE a #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<abbr>@ element.
+--
+-- Example:
+--
+-- > abbr $ span $ text "foo"
+--
+-- Result:
+--
+-- > <abbr><span>foo</span></abbr>
+--
+abbr :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+abbr = Parent "<abbr" "</abbr>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE abbr #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<address>@ element.
+--
+-- Example:
+--
+-- > address $ span $ text "foo"
+--
+-- Result:
+--
+-- > <address><span>foo</span></address>
+--
+address :: Html  -- ^ Inner HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:212
+        -> Html  -- ^ Resulting HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:213
+address = Parent "<address" "</address>"                                        -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE address #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<area />@ element.
+--
+-- Example:
+--
+-- > area
+--
+-- Result:
+--
+-- > <area />
+--
+area :: Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:238
+area = Leaf "<area" " />"                                                       -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE area #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<article>@ element.
+--
+-- Example:
+--
+-- > article $ span $ text "foo"
+--
+-- Result:
+--
+-- > <article><span>foo</span></article>
+--
+article :: Html  -- ^ Inner HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:212
+        -> Html  -- ^ Resulting HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:213
+article = Parent "<article" "</article>"                                        -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE article #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<aside>@ element.
+--
+-- Example:
+--
+-- > aside $ span $ text "foo"
+--
+-- Result:
+--
+-- > <aside><span>foo</span></aside>
+--
+aside :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+aside = Parent "<aside" "</aside>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE aside #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<audio>@ element.
+--
+-- Example:
+--
+-- > audio $ span $ text "foo"
+--
+-- Result:
+--
+-- > <audio><span>foo</span></audio>
+--
+audio :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+audio = Parent "<audio" "</audio>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE audio #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<b>@ element.
+--
+-- Example:
+--
+-- > b $ span $ text "foo"
+--
+-- Result:
+--
+-- > <b><span>foo</span></b>
+--
+b :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+b = Parent "<b" "</b>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE b #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<base>@ element.
+--
+-- Example:
+--
+-- > base $ span $ text "foo"
+--
+-- Result:
+--
+-- > <base><span>foo</span></base>
+--
+base :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+base = Parent "<base" "</base>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE base #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<bdo>@ element.
+--
+-- Example:
+--
+-- > bdo $ span $ text "foo"
+--
+-- Result:
+--
+-- > <bdo><span>foo</span></bdo>
+--
+bdo :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+bdo = Parent "<bdo" "</bdo>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE bdo #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<blockquote>@ element.
+--
+-- Example:
+--
+-- > blockquote $ span $ text "foo"
+--
+-- Result:
+--
+-- > <blockquote><span>foo</span></blockquote>
+--
+blockquote :: Html  -- ^ Inner HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:212
+           -> Html  -- ^ Resulting HTML.                                        -- ./Util/GenerateHtmlCombinators.hs:213
+blockquote = Parent "<blockquote" "</blockquote>"                               -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE blockquote #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<body>@ element.
+--
+-- Example:
+--
+-- > body $ span $ text "foo"
+--
+-- Result:
+--
+-- > <body><span>foo</span></body>
+--
+body :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+body = Parent "<body" "</body>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE body #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<br />@ element.
+--
+-- Example:
+--
+-- > br
+--
+-- Result:
+--
+-- > <br />
+--
+br :: Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:238
+br = Leaf "<br" " />"                                                           -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE br #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<button>@ element.
+--
+-- Example:
+--
+-- > button $ span $ text "foo"
+--
+-- Result:
+--
+-- > <button><span>foo</span></button>
+--
+button :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+button = Parent "<button" "</button>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE button #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<canvas>@ element.
+--
+-- Example:
+--
+-- > canvas $ span $ text "foo"
+--
+-- Result:
+--
+-- > <canvas><span>foo</span></canvas>
+--
+canvas :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+canvas = Parent "<canvas" "</canvas>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE canvas #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<caption>@ element.
+--
+-- Example:
+--
+-- > caption $ span $ text "foo"
+--
+-- Result:
+--
+-- > <caption><span>foo</span></caption>
+--
+caption :: Html  -- ^ Inner HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:212
+        -> Html  -- ^ Resulting HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:213
+caption = Parent "<caption" "</caption>"                                        -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE caption #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<cite>@ element.
+--
+-- Example:
+--
+-- > cite $ span $ text "foo"
+--
+-- Result:
+--
+-- > <cite><span>foo</span></cite>
+--
+cite :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+cite = Parent "<cite" "</cite>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE cite #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<code>@ element.
+--
+-- Example:
+--
+-- > code $ span $ text "foo"
+--
+-- Result:
+--
+-- > <code><span>foo</span></code>
+--
+code :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+code = Parent "<code" "</code>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE code #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<col />@ element.
+--
+-- Example:
+--
+-- > col
+--
+-- Result:
+--
+-- > <col />
+--
+col :: Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:238
+col = Leaf "<col" " />"                                                         -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE col #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<colgroup>@ element.
+--
+-- Example:
+--
+-- > colgroup $ span $ text "foo"
+--
+-- Result:
+--
+-- > <colgroup><span>foo</span></colgroup>
+--
+colgroup :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+colgroup = Parent "<colgroup" "</colgroup>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE colgroup #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<command>@ element.
+--
+-- Example:
+--
+-- > command $ span $ text "foo"
+--
+-- Result:
+--
+-- > <command><span>foo</span></command>
+--
+command :: Html  -- ^ Inner HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:212
+        -> Html  -- ^ Resulting HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:213
+command = Parent "<command" "</command>"                                        -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE command #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<datalist>@ element.
+--
+-- Example:
+--
+-- > datalist $ span $ text "foo"
+--
+-- Result:
+--
+-- > <datalist><span>foo</span></datalist>
+--
+datalist :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+datalist = Parent "<datalist" "</datalist>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE datalist #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<dd>@ element.
+--
+-- Example:
+--
+-- > dd $ span $ text "foo"
+--
+-- Result:
+--
+-- > <dd><span>foo</span></dd>
+--
+dd :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+dd = Parent "<dd" "</dd>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE dd #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<del>@ element.
+--
+-- Example:
+--
+-- > del $ span $ text "foo"
+--
+-- Result:
+--
+-- > <del><span>foo</span></del>
+--
+del :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+del = Parent "<del" "</del>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE del #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<details>@ element.
+--
+-- Example:
+--
+-- > details $ span $ text "foo"
+--
+-- Result:
+--
+-- > <details><span>foo</span></details>
+--
+details :: Html  -- ^ Inner HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:212
+        -> Html  -- ^ Resulting HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:213
+details = Parent "<details" "</details>"                                        -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE details #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<dfn>@ element.
+--
+-- Example:
+--
+-- > dfn $ span $ text "foo"
+--
+-- Result:
+--
+-- > <dfn><span>foo</span></dfn>
+--
+dfn :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+dfn = Parent "<dfn" "</dfn>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE dfn #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<div>@ element.
+--
+-- Example:
+--
+-- > div $ span $ text "foo"
+--
+-- Result:
+--
+-- > <div><span>foo</span></div>
+--
+div :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+div = Parent "<div" "</div>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE div #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<dl>@ element.
+--
+-- Example:
+--
+-- > dl $ span $ text "foo"
+--
+-- Result:
+--
+-- > <dl><span>foo</span></dl>
+--
+dl :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+dl = Parent "<dl" "</dl>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE dl #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<dt>@ element.
+--
+-- Example:
+--
+-- > dt $ span $ text "foo"
+--
+-- Result:
+--
+-- > <dt><span>foo</span></dt>
+--
+dt :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+dt = Parent "<dt" "</dt>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE dt #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<em>@ element.
+--
+-- Example:
+--
+-- > em $ span $ text "foo"
+--
+-- Result:
+--
+-- > <em><span>foo</span></em>
+--
+em :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+em = Parent "<em" "</em>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE em #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<embed />@ element.
+--
+-- Example:
+--
+-- > embed
+--
+-- Result:
+--
+-- > <embed />
+--
+embed :: Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:238
+embed = Leaf "<embed" " />"                                                     -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE embed #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<fieldset>@ element.
+--
+-- Example:
+--
+-- > fieldset $ span $ text "foo"
+--
+-- Result:
+--
+-- > <fieldset><span>foo</span></fieldset>
+--
+fieldset :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+fieldset = Parent "<fieldset" "</fieldset>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE fieldset #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<figcaption>@ element.
+--
+-- Example:
+--
+-- > figcaption $ span $ text "foo"
+--
+-- Result:
+--
+-- > <figcaption><span>foo</span></figcaption>
+--
+figcaption :: Html  -- ^ Inner HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:212
+           -> Html  -- ^ Resulting HTML.                                        -- ./Util/GenerateHtmlCombinators.hs:213
+figcaption = Parent "<figcaption" "</figcaption>"                               -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE figcaption #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<figure>@ element.
+--
+-- Example:
+--
+-- > figure $ span $ text "foo"
+--
+-- Result:
+--
+-- > <figure><span>foo</span></figure>
+--
+figure :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+figure = Parent "<figure" "</figure>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE figure #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<footer>@ element.
+--
+-- Example:
+--
+-- > footer $ span $ text "foo"
+--
+-- Result:
+--
+-- > <footer><span>foo</span></footer>
+--
+footer :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+footer = Parent "<footer" "</footer>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE footer #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<form>@ element.
+--
+-- Example:
+--
+-- > form $ span $ text "foo"
+--
+-- Result:
+--
+-- > <form><span>foo</span></form>
+--
+form :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+form = Parent "<form" "</form>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE form #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h1>@ element.
+--
+-- Example:
+--
+-- > h1 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h1><span>foo</span></h1>
+--
+h1 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h1 = Parent "<h1" "</h1>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h1 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h2>@ element.
+--
+-- Example:
+--
+-- > h2 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h2><span>foo</span></h2>
+--
+h2 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h2 = Parent "<h2" "</h2>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h2 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h3>@ element.
+--
+-- Example:
+--
+-- > h3 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h3><span>foo</span></h3>
+--
+h3 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h3 = Parent "<h3" "</h3>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h3 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h4>@ element.
+--
+-- Example:
+--
+-- > h4 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h4><span>foo</span></h4>
+--
+h4 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h4 = Parent "<h4" "</h4>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h4 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h5>@ element.
+--
+-- Example:
+--
+-- > h5 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h5><span>foo</span></h5>
+--
+h5 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h5 = Parent "<h5" "</h5>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h5 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<h6>@ element.
+--
+-- Example:
+--
+-- > h6 $ span $ text "foo"
+--
+-- Result:
+--
+-- > <h6><span>foo</span></h6>
+--
+h6 :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+h6 = Parent "<h6" "</h6>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE h6 #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<head>@ element.
+--
+-- Example:
+--
+-- > head $ span $ text "foo"
+--
+-- Result:
+--
+-- > <head><span>foo</span></head>
+--
+head :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+head = Parent "<head" "</head>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE head #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<header>@ element.
+--
+-- Example:
+--
+-- > header $ span $ text "foo"
+--
+-- Result:
+--
+-- > <header><span>foo</span></header>
+--
+header :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+header = Parent "<header" "</header>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE header #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<hgroup>@ element.
+--
+-- Example:
+--
+-- > hgroup $ span $ text "foo"
+--
+-- Result:
+--
+-- > <hgroup><span>foo</span></hgroup>
+--
+hgroup :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+hgroup = Parent "<hgroup" "</hgroup>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE hgroup #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<hr />@ element.
+--
+-- Example:
+--
+-- > hr
+--
+-- Result:
+--
+-- > <hr />
+--
+hr :: Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:238
+hr = Leaf "<hr" " />"                                                           -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE hr #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<html>@ element.
+--
+-- Example:
+--
+-- > html $ span $ text "foo"
+--
+-- Result:
+--
+-- > <html><span>foo</span></html>
+--
+html :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+html = Parent "<html" "</html>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE html #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<i>@ element.
+--
+-- Example:
+--
+-- > i $ span $ text "foo"
+--
+-- Result:
+--
+-- > <i><span>foo</span></i>
+--
+i :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+i = Parent "<i" "</i>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE i #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<iframe>@ element.
+--
+-- Example:
+--
+-- > iframe $ span $ text "foo"
+--
+-- Result:
+--
+-- > <iframe><span>foo</span></iframe>
+--
+iframe :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+iframe = Parent "<iframe" "</iframe>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE iframe #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<img />@ element.
+--
+-- Example:
+--
+-- > img
+--
+-- Result:
+--
+-- > <img />
+--
+img :: Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:238
+img = Leaf "<img" " />"                                                         -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE img #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<input />@ element.
+--
+-- Example:
+--
+-- > input
+--
+-- Result:
+--
+-- > <input />
+--
+input :: Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:238
+input = Leaf "<input" " />"                                                     -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE input #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<ins>@ element.
+--
+-- Example:
+--
+-- > ins $ span $ text "foo"
+--
+-- Result:
+--
+-- > <ins><span>foo</span></ins>
+--
+ins :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+ins = Parent "<ins" "</ins>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE ins #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<kbd>@ element.
+--
+-- Example:
+--
+-- > kbd $ span $ text "foo"
+--
+-- Result:
+--
+-- > <kbd><span>foo</span></kbd>
+--
+kbd :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+kbd = Parent "<kbd" "</kbd>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE kbd #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<keygen>@ element.
+--
+-- Example:
+--
+-- > keygen $ span $ text "foo"
+--
+-- Result:
+--
+-- > <keygen><span>foo</span></keygen>
+--
+keygen :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+keygen = Parent "<keygen" "</keygen>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE keygen #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<label>@ element.
+--
+-- Example:
+--
+-- > label $ span $ text "foo"
+--
+-- Result:
+--
+-- > <label><span>foo</span></label>
+--
+label :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+label = Parent "<label" "</label>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE label #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<legend>@ element.
+--
+-- Example:
+--
+-- > legend $ span $ text "foo"
+--
+-- Result:
+--
+-- > <legend><span>foo</span></legend>
+--
+legend :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+legend = Parent "<legend" "</legend>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE legend #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<li>@ element.
+--
+-- Example:
+--
+-- > li $ span $ text "foo"
+--
+-- Result:
+--
+-- > <li><span>foo</span></li>
+--
+li :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+li = Parent "<li" "</li>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE li #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<link />@ element.
+--
+-- Example:
+--
+-- > link
+--
+-- Result:
+--
+-- > <link />
+--
+link :: Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:238
+link = Leaf "<link" " />"                                                       -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE link #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<map>@ element.
+--
+-- Example:
+--
+-- > map $ span $ text "foo"
+--
+-- Result:
+--
+-- > <map><span>foo</span></map>
+--
+map :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+map = Parent "<map" "</map>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE map #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<mark>@ element.
+--
+-- Example:
+--
+-- > mark $ span $ text "foo"
+--
+-- Result:
+--
+-- > <mark><span>foo</span></mark>
+--
+mark :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+mark = Parent "<mark" "</mark>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE mark #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<menu>@ element.
+--
+-- Example:
+--
+-- > menu $ span $ text "foo"
+--
+-- Result:
+--
+-- > <menu><span>foo</span></menu>
+--
+menu :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+menu = Parent "<menu" "</menu>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE menu #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<meta />@ element.
+--
+-- Example:
+--
+-- > meta
+--
+-- Result:
+--
+-- > <meta />
+--
+meta :: Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:238
+meta = Leaf "<meta" " />"                                                       -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE meta #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<meter>@ element.
+--
+-- Example:
+--
+-- > meter $ span $ text "foo"
+--
+-- Result:
+--
+-- > <meter><span>foo</span></meter>
+--
+meter :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+meter = Parent "<meter" "</meter>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE meter #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<nav>@ element.
+--
+-- Example:
+--
+-- > nav $ span $ text "foo"
+--
+-- Result:
+--
+-- > <nav><span>foo</span></nav>
+--
+nav :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+nav = Parent "<nav" "</nav>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE nav #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<noscript>@ element.
+--
+-- Example:
+--
+-- > noscript $ span $ text "foo"
+--
+-- Result:
+--
+-- > <noscript><span>foo</span></noscript>
+--
+noscript :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+noscript = Parent "<noscript" "</noscript>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE noscript #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<object>@ element.
+--
+-- Example:
+--
+-- > object $ span $ text "foo"
+--
+-- Result:
+--
+-- > <object><span>foo</span></object>
+--
+object :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+object = Parent "<object" "</object>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE object #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<ol>@ element.
+--
+-- Example:
+--
+-- > ol $ span $ text "foo"
+--
+-- Result:
+--
+-- > <ol><span>foo</span></ol>
+--
+ol :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+ol = Parent "<ol" "</ol>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE ol #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<optgroup>@ element.
+--
+-- Example:
+--
+-- > optgroup $ span $ text "foo"
+--
+-- Result:
+--
+-- > <optgroup><span>foo</span></optgroup>
+--
+optgroup :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+optgroup = Parent "<optgroup" "</optgroup>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE optgroup #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<option>@ element.
+--
+-- Example:
+--
+-- > option $ span $ text "foo"
+--
+-- Result:
+--
+-- > <option><span>foo</span></option>
+--
+option :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+option = Parent "<option" "</option>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE option #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<output>@ element.
+--
+-- Example:
+--
+-- > output $ span $ text "foo"
+--
+-- Result:
+--
+-- > <output><span>foo</span></output>
+--
+output :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+output = Parent "<output" "</output>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE output #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<p>@ element.
+--
+-- Example:
+--
+-- > p $ span $ text "foo"
+--
+-- Result:
+--
+-- > <p><span>foo</span></p>
+--
+p :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+p = Parent "<p" "</p>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE p #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<param />@ element.
+--
+-- Example:
+--
+-- > param
+--
+-- Result:
+--
+-- > <param />
+--
+param :: Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:238
+param = Leaf "<param" " />"                                                     -- ./Util/GenerateHtmlCombinators.hs:239
+{-# INLINE param #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:240
+
+-- | Combinator for the @\<pre>@ element.
+--
+-- Example:
+--
+-- > pre $ span $ text "foo"
+--
+-- Result:
+--
+-- > <pre><span>foo</span></pre>
+--
+pre :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+pre = Parent "<pre" "</pre>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE pre #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<progress>@ element.
+--
+-- Example:
+--
+-- > progress $ span $ text "foo"
+--
+-- Result:
+--
+-- > <progress><span>foo</span></progress>
+--
+progress :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+progress = Parent "<progress" "</progress>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE progress #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<q>@ element.
+--
+-- Example:
+--
+-- > q $ span $ text "foo"
+--
+-- Result:
+--
+-- > <q><span>foo</span></q>
+--
+q :: Html  -- ^ Inner HTML.                                                     -- ./Util/GenerateHtmlCombinators.hs:212
+  -> Html  -- ^ Resulting HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:213
+q = Parent "<q" "</q>"                                                          -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE q #-}                                                                -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<rp>@ element.
+--
+-- Example:
+--
+-- > rp $ span $ text "foo"
+--
+-- Result:
+--
+-- > <rp><span>foo</span></rp>
+--
+rp :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+rp = Parent "<rp" "</rp>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE rp #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<rt>@ element.
+--
+-- Example:
+--
+-- > rt $ span $ text "foo"
+--
+-- Result:
+--
+-- > <rt><span>foo</span></rt>
+--
+rt :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+rt = Parent "<rt" "</rt>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE rt #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<ruby>@ element.
+--
+-- Example:
+--
+-- > ruby $ span $ text "foo"
+--
+-- Result:
+--
+-- > <ruby><span>foo</span></ruby>
+--
+ruby :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+ruby = Parent "<ruby" "</ruby>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE ruby #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<samp>@ element.
+--
+-- Example:
+--
+-- > samp $ span $ text "foo"
+--
+-- Result:
+--
+-- > <samp><span>foo</span></samp>
+--
+samp :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+samp = Parent "<samp" "</samp>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE samp #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<script>@ element.
+--
+-- Example:
+--
+-- > script $ span $ text "foo"
+--
+-- Result:
+--
+-- > <script><span>foo</span></script>
+--
+script :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+script = Parent "<script" "</script>" . external                                -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE script #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<section>@ element.
+--
+-- Example:
+--
+-- > section $ span $ text "foo"
+--
+-- Result:
+--
+-- > <section><span>foo</span></section>
+--
+section :: Html  -- ^ Inner HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:212
+        -> Html  -- ^ Resulting HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:213
+section = Parent "<section" "</section>"                                        -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE section #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<select>@ element.
+--
+-- Example:
+--
+-- > select $ span $ text "foo"
+--
+-- Result:
+--
+-- > <select><span>foo</span></select>
+--
+select :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+select = Parent "<select" "</select>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE select #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<small>@ element.
+--
+-- Example:
+--
+-- > small $ span $ text "foo"
+--
+-- Result:
+--
+-- > <small><span>foo</span></small>
+--
+small :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+small = Parent "<small" "</small>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE small #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<source>@ element.
+--
+-- Example:
+--
+-- > source $ span $ text "foo"
+--
+-- Result:
+--
+-- > <source><span>foo</span></source>
+--
+source :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+source = Parent "<source" "</source>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE source #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<span>@ element.
+--
+-- Example:
+--
+-- > span $ span $ text "foo"
+--
+-- Result:
+--
+-- > <span><span>foo</span></span>
+--
+span :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+span = Parent "<span" "</span>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE span #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<strong>@ element.
+--
+-- Example:
+--
+-- > strong $ span $ text "foo"
+--
+-- Result:
+--
+-- > <strong><span>foo</span></strong>
+--
+strong :: Html  -- ^ Inner HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:212
+       -> Html  -- ^ Resulting HTML.                                            -- ./Util/GenerateHtmlCombinators.hs:213
+strong = Parent "<strong" "</strong>"                                           -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE strong #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<style>@ element.
+--
+-- Example:
+--
+-- > style $ span $ text "foo"
+--
+-- Result:
+--
+-- > <style><span>foo</span></style>
+--
+style :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+style = Parent "<style" "</style>" . external                                   -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE style #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<sub>@ element.
+--
+-- Example:
+--
+-- > sub $ span $ text "foo"
+--
+-- Result:
+--
+-- > <sub><span>foo</span></sub>
+--
+sub :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+sub = Parent "<sub" "</sub>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE sub #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<summary>@ element.
+--
+-- Example:
+--
+-- > summary $ span $ text "foo"
+--
+-- Result:
+--
+-- > <summary><span>foo</span></summary>
+--
+summary :: Html  -- ^ Inner HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:212
+        -> Html  -- ^ Resulting HTML.                                           -- ./Util/GenerateHtmlCombinators.hs:213
+summary = Parent "<summary" "</summary>"                                        -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE summary #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<sup>@ element.
+--
+-- Example:
+--
+-- > sup $ span $ text "foo"
+--
+-- Result:
+--
+-- > <sup><span>foo</span></sup>
+--
+sup :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+sup = Parent "<sup" "</sup>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE sup #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<table>@ element.
+--
+-- Example:
+--
+-- > table $ span $ text "foo"
+--
+-- Result:
+--
+-- > <table><span>foo</span></table>
+--
+table :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+table = Parent "<table" "</table>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE table #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<tbody>@ element.
+--
+-- Example:
+--
+-- > tbody $ span $ text "foo"
+--
+-- Result:
+--
+-- > <tbody><span>foo</span></tbody>
+--
+tbody :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+tbody = Parent "<tbody" "</tbody>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE tbody #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<td>@ element.
+--
+-- Example:
+--
+-- > td $ span $ text "foo"
+--
+-- Result:
+--
+-- > <td><span>foo</span></td>
+--
+td :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+td = Parent "<td" "</td>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE td #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<textarea>@ element.
+--
+-- Example:
+--
+-- > textarea $ span $ text "foo"
+--
+-- Result:
+--
+-- > <textarea><span>foo</span></textarea>
+--
+textarea :: Html  -- ^ Inner HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:212
+         -> Html  -- ^ Resulting HTML.                                          -- ./Util/GenerateHtmlCombinators.hs:213
+textarea = Parent "<textarea" "</textarea>"                                     -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE textarea #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<tfoot>@ element.
+--
+-- Example:
+--
+-- > tfoot $ span $ text "foo"
+--
+-- Result:
+--
+-- > <tfoot><span>foo</span></tfoot>
+--
+tfoot :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+tfoot = Parent "<tfoot" "</tfoot>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE tfoot #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<th>@ element.
+--
+-- Example:
+--
+-- > th $ span $ text "foo"
+--
+-- Result:
+--
+-- > <th><span>foo</span></th>
+--
+th :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+th = Parent "<th" "</th>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE th #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<thead>@ element.
+--
+-- Example:
+--
+-- > thead $ span $ text "foo"
+--
+-- Result:
+--
+-- > <thead><span>foo</span></thead>
+--
+thead :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+thead = Parent "<thead" "</thead>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE thead #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<time>@ element.
+--
+-- Example:
+--
+-- > time $ span $ text "foo"
+--
+-- Result:
+--
+-- > <time><span>foo</span></time>
+--
+time :: Html  -- ^ Inner HTML.                                                  -- ./Util/GenerateHtmlCombinators.hs:212
+     -> Html  -- ^ Resulting HTML.                                              -- ./Util/GenerateHtmlCombinators.hs:213
+time = Parent "<time" "</time>"                                                 -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE time #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<title>@ element.
+--
+-- Example:
+--
+-- > title $ span $ text "foo"
+--
+-- Result:
+--
+-- > <title><span>foo</span></title>
+--
+title :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+title = Parent "<title" "</title>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE title #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<tr>@ element.
+--
+-- Example:
+--
+-- > tr $ span $ text "foo"
+--
+-- Result:
+--
+-- > <tr><span>foo</span></tr>
+--
+tr :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+tr = Parent "<tr" "</tr>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE tr #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<ul>@ element.
+--
+-- Example:
+--
+-- > ul $ span $ text "foo"
+--
+-- Result:
+--
+-- > <ul><span>foo</span></ul>
+--
+ul :: Html  -- ^ Inner HTML.                                                    -- ./Util/GenerateHtmlCombinators.hs:212
+   -> Html  -- ^ Resulting HTML.                                                -- ./Util/GenerateHtmlCombinators.hs:213
+ul = Parent "<ul" "</ul>"                                                       -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE ul #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<var>@ element.
+--
+-- Example:
+--
+-- > var $ span $ text "foo"
+--
+-- Result:
+--
+-- > <var><span>foo</span></var>
+--
+var :: Html  -- ^ Inner HTML.                                                   -- ./Util/GenerateHtmlCombinators.hs:212
+    -> Html  -- ^ Resulting HTML.                                               -- ./Util/GenerateHtmlCombinators.hs:213
+var = Parent "<var" "</var>"                                                    -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE var #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:216
+
+-- | Combinator for the @\<video>@ element.
+--
+-- Example:
+--
+-- > video $ span $ text "foo"
+--
+-- Result:
+--
+-- > <video><span>foo</span></video>
+--
+video :: Html  -- ^ Inner HTML.                                                 -- ./Util/GenerateHtmlCombinators.hs:212
+      -> Html  -- ^ Resulting HTML.                                             -- ./Util/GenerateHtmlCombinators.hs:213
+video = Parent "<video" "</video>"                                              -- ./Util/GenerateHtmlCombinators.hs:214
+{-# INLINE video #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:216
diff --git a/Text/Blaze/Html5/Attributes.hs b/Text/Blaze/Html5/Attributes.hs
new file mode 100644
--- /dev/null
+++ b/Text/Blaze/Html5/Attributes.hs
@@ -0,0 +1,2654 @@
+-- WARNING: This code was automatically generated. You should *never*
+-- edit it directly. Instead, edit the files who generated this code,
+-- you can find them in the @util/@ directory.
+
+-- | This module exports combinators that provide you with the
+-- ability to set attributes on HTML elements.
+--
+{-# LANGUAGE OverloadedStrings #-}                                              -- ./Util/GenerateHtmlCombinators.hs:103
+module Text.Blaze.Html5.Attributes                                              -- ./Util/GenerateHtmlCombinators.hs:151
+    ( accept                                                                    -- ./Util/GenerateHtmlCombinators.hs:152
+    , accept_charset                                                            -- ./Util/GenerateHtmlCombinators.hs:154
+    , accesskey                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , action                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , alt                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , async                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , autocomplete                                                              -- ./Util/GenerateHtmlCombinators.hs:154
+    , autofocus                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , autoplay                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , challenge                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , charset                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , checked                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , cite                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , class_                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , cols                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , colspan                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , content                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , contenteditable                                                           -- ./Util/GenerateHtmlCombinators.hs:154
+    , contextmenu                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , controls                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , coords                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , data_                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , datetime                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , defer                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , dir                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , disabled                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , draggable                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , enctype                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , for                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , form                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , formaction                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , formenctype                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , formmethod                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , formnovalidate                                                            -- ./Util/GenerateHtmlCombinators.hs:154
+    , formtarget                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , headers                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , height                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , hidden                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , high                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , href                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , hreflang                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , http_equiv                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , icon                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , id                                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , ismap                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , item                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , itemprop                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , keytype                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , label                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , lang                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , list                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , loop                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , low                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , manifest                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , max                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , maxlength                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , media                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , method                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , min                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , multiple                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , name                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , novalidate                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , onbeforeonload                                                            -- ./Util/GenerateHtmlCombinators.hs:154
+    , onbeforeprint                                                             -- ./Util/GenerateHtmlCombinators.hs:154
+    , oncanplay                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , oncanplaythrough                                                          -- ./Util/GenerateHtmlCombinators.hs:154
+    , onchange                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , onclick                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , oncontextmenu                                                             -- ./Util/GenerateHtmlCombinators.hs:154
+    , ondblclick                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , ondrag                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , ondragend                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , ondragenter                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , ondragleave                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , ondragover                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , ondragstart                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , ondrop                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , ondurationchange                                                          -- ./Util/GenerateHtmlCombinators.hs:154
+    , onemptied                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , onended                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , onerror                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , onfocus                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , onformchange                                                              -- ./Util/GenerateHtmlCombinators.hs:154
+    , onforminput                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , onhaschange                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , oninput                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , oninvalid                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , onkeydown                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , onkeyup                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , onload                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , onloadeddata                                                              -- ./Util/GenerateHtmlCombinators.hs:154
+    , onloadedmetadata                                                          -- ./Util/GenerateHtmlCombinators.hs:154
+    , onloadstart                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmessage                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmousedown                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmousemove                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmouseout                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmouseover                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmouseup                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , onmousewheel                                                              -- ./Util/GenerateHtmlCombinators.hs:154
+    , ononline                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , onpagehide                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , onpageshow                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , onpause                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , onplay                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , onplaying                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , onprogress                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , onpropstate                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , onratechange                                                              -- ./Util/GenerateHtmlCombinators.hs:154
+    , onreadystatechange                                                        -- ./Util/GenerateHtmlCombinators.hs:154
+    , onredo                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , onresize                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , onscroll                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , onseeked                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , onseeking                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , onselect                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , onstalled                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , onstorage                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , onsubmit                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , onsuspend                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , ontimeupdate                                                              -- ./Util/GenerateHtmlCombinators.hs:154
+    , onundo                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , onunload                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , onvolumechange                                                            -- ./Util/GenerateHtmlCombinators.hs:154
+    , onwaiting                                                                 -- ./Util/GenerateHtmlCombinators.hs:154
+    , open                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , optimum                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , pattern                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , ping                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , placeholder                                                               -- ./Util/GenerateHtmlCombinators.hs:154
+    , preload                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , pubdate                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , radiogroup                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , readonly                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , rel                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , required                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , reversed                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , rows                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , rowspan                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , sandbox                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , scope                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , scoped                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , seamless                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , selected                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , shape                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , size                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , sizes                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , span                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , spellcheck                                                                -- ./Util/GenerateHtmlCombinators.hs:154
+    , src                                                                       -- ./Util/GenerateHtmlCombinators.hs:154
+    , srcdoc                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , start                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , step                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , style                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , subject                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , summary                                                                   -- ./Util/GenerateHtmlCombinators.hs:154
+    , tabindex                                                                  -- ./Util/GenerateHtmlCombinators.hs:154
+    , target                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , title                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , type_                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , usemap                                                                    -- ./Util/GenerateHtmlCombinators.hs:154
+    , value                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , width                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    , wrap                                                                      -- ./Util/GenerateHtmlCombinators.hs:154
+    , xmlns                                                                     -- ./Util/GenerateHtmlCombinators.hs:154
+    ) where                                                                     -- ./Util/GenerateHtmlCombinators.hs:155
+
+import Prelude ()                                                               -- ./Util/GenerateHtmlCombinators.hs:105
+                                                                                -- ./Util/GenerateHtmlCombinators.hs:106
+import Text.Blaze.Internal (Attribute, AttributeValue, attribute)               -- ./Util/GenerateHtmlCombinators.hs:107
+                                                                                -- ./Util/GenerateHtmlCombinators.hs:108
+-- | Combinator for the @accept@ attribute.
+--
+-- Example:
+--
+-- > div ! accept "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div accept="bar">Hello.</div>
+--
+accept :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+accept = attribute " accept=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE accept #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @accept-charset@ attribute.
+--
+-- Example:
+--
+-- > div ! accept_charset "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div accept-charset="bar">Hello.</div>
+--
+accept_charset :: AttributeValue  -- ^ Attribute value.                         -- ./Util/GenerateHtmlCombinators.hs:260
+               -> Attribute       -- ^ Resulting attribute.                     -- ./Util/GenerateHtmlCombinators.hs:261
+accept_charset = attribute " accept-charset=\""                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE accept_charset #-}                                                   -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @accesskey@ attribute.
+--
+-- Example:
+--
+-- > div ! accesskey "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div accesskey="bar">Hello.</div>
+--
+accesskey :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+accesskey = attribute " accesskey=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE accesskey #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @action@ attribute.
+--
+-- Example:
+--
+-- > div ! action "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div action="bar">Hello.</div>
+--
+action :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+action = attribute " action=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE action #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @alt@ attribute.
+--
+-- Example:
+--
+-- > div ! alt "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div alt="bar">Hello.</div>
+--
+alt :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+alt = attribute " alt=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE alt #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @async@ attribute.
+--
+-- Example:
+--
+-- > div ! async "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div async="bar">Hello.</div>
+--
+async :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+async = attribute " async=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE async #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @autocomplete@ attribute.
+--
+-- Example:
+--
+-- > div ! autocomplete "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div autocomplete="bar">Hello.</div>
+--
+autocomplete :: AttributeValue  -- ^ Attribute value.                           -- ./Util/GenerateHtmlCombinators.hs:260
+             -> Attribute       -- ^ Resulting attribute.                       -- ./Util/GenerateHtmlCombinators.hs:261
+autocomplete = attribute " autocomplete=\""                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE autocomplete #-}                                                     -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @autofocus@ attribute.
+--
+-- Example:
+--
+-- > div ! autofocus "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div autofocus="bar">Hello.</div>
+--
+autofocus :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+autofocus = attribute " autofocus=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE autofocus #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @autoplay@ attribute.
+--
+-- Example:
+--
+-- > div ! autoplay "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div autoplay="bar">Hello.</div>
+--
+autoplay :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+autoplay = attribute " autoplay=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE autoplay #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @challenge@ attribute.
+--
+-- Example:
+--
+-- > div ! challenge "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div challenge="bar">Hello.</div>
+--
+challenge :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+challenge = attribute " challenge=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE challenge #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @charset@ attribute.
+--
+-- Example:
+--
+-- > div ! charset "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div charset="bar">Hello.</div>
+--
+charset :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+charset = attribute " charset=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE charset #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @checked@ attribute.
+--
+-- Example:
+--
+-- > div ! checked "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div checked="bar">Hello.</div>
+--
+checked :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+checked = attribute " checked=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE checked #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @cite@ attribute.
+--
+-- Example:
+--
+-- > div ! cite "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div cite="bar">Hello.</div>
+--
+cite :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+cite = attribute " cite=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE cite #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @class@ attribute.
+--
+-- Example:
+--
+-- > div ! class_ "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div class="bar">Hello.</div>
+--
+class_ :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+class_ = attribute " class=\""                                                  -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE class_ #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @cols@ attribute.
+--
+-- Example:
+--
+-- > div ! cols "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div cols="bar">Hello.</div>
+--
+cols :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+cols = attribute " cols=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE cols #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @colspan@ attribute.
+--
+-- Example:
+--
+-- > div ! colspan "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div colspan="bar">Hello.</div>
+--
+colspan :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+colspan = attribute " colspan=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE colspan #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @content@ attribute.
+--
+-- Example:
+--
+-- > div ! content "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div content="bar">Hello.</div>
+--
+content :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+content = attribute " content=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE content #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @contenteditable@ attribute.
+--
+-- Example:
+--
+-- > div ! contenteditable "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div contenteditable="bar">Hello.</div>
+--
+contenteditable :: AttributeValue  -- ^ Attribute value.                        -- ./Util/GenerateHtmlCombinators.hs:260
+                -> Attribute       -- ^ Resulting attribute.                    -- ./Util/GenerateHtmlCombinators.hs:261
+contenteditable = attribute " contenteditable=\""                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE contenteditable #-}                                                  -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @contextmenu@ attribute.
+--
+-- Example:
+--
+-- > div ! contextmenu "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div contextmenu="bar">Hello.</div>
+--
+contextmenu :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+contextmenu = attribute " contextmenu=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE contextmenu #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @controls@ attribute.
+--
+-- Example:
+--
+-- > div ! controls "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div controls="bar">Hello.</div>
+--
+controls :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+controls = attribute " controls=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE controls #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @coords@ attribute.
+--
+-- Example:
+--
+-- > div ! coords "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div coords="bar">Hello.</div>
+--
+coords :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+coords = attribute " coords=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE coords #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @data@ attribute.
+--
+-- Example:
+--
+-- > div ! data_ "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div data="bar">Hello.</div>
+--
+data_ :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+data_ = attribute " data=\""                                                    -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE data_ #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @datetime@ attribute.
+--
+-- Example:
+--
+-- > div ! datetime "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div datetime="bar">Hello.</div>
+--
+datetime :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+datetime = attribute " datetime=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE datetime #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @defer@ attribute.
+--
+-- Example:
+--
+-- > div ! defer "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div defer="bar">Hello.</div>
+--
+defer :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+defer = attribute " defer=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE defer #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @dir@ attribute.
+--
+-- Example:
+--
+-- > div ! dir "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div dir="bar">Hello.</div>
+--
+dir :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+dir = attribute " dir=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE dir #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @disabled@ attribute.
+--
+-- Example:
+--
+-- > div ! disabled "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div disabled="bar">Hello.</div>
+--
+disabled :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+disabled = attribute " disabled=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE disabled #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @draggable@ attribute.
+--
+-- Example:
+--
+-- > div ! draggable "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div draggable="bar">Hello.</div>
+--
+draggable :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+draggable = attribute " draggable=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE draggable #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @enctype@ attribute.
+--
+-- Example:
+--
+-- > div ! enctype "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div enctype="bar">Hello.</div>
+--
+enctype :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+enctype = attribute " enctype=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE enctype #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @for@ attribute.
+--
+-- Example:
+--
+-- > div ! for "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div for="bar">Hello.</div>
+--
+for :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+for = attribute " for=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE for #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @form@ attribute.
+--
+-- Example:
+--
+-- > div ! form "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div form="bar">Hello.</div>
+--
+form :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+form = attribute " form=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE form #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @formaction@ attribute.
+--
+-- Example:
+--
+-- > div ! formaction "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div formaction="bar">Hello.</div>
+--
+formaction :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+formaction = attribute " formaction=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE formaction #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @formenctype@ attribute.
+--
+-- Example:
+--
+-- > div ! formenctype "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div formenctype="bar">Hello.</div>
+--
+formenctype :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+formenctype = attribute " formenctype=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE formenctype #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @formmethod@ attribute.
+--
+-- Example:
+--
+-- > div ! formmethod "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div formmethod="bar">Hello.</div>
+--
+formmethod :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+formmethod = attribute " formmethod=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE formmethod #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @formnovalidate@ attribute.
+--
+-- Example:
+--
+-- > div ! formnovalidate "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div formnovalidate="bar">Hello.</div>
+--
+formnovalidate :: AttributeValue  -- ^ Attribute value.                         -- ./Util/GenerateHtmlCombinators.hs:260
+               -> Attribute       -- ^ Resulting attribute.                     -- ./Util/GenerateHtmlCombinators.hs:261
+formnovalidate = attribute " formnovalidate=\""                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE formnovalidate #-}                                                   -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @formtarget@ attribute.
+--
+-- Example:
+--
+-- > div ! formtarget "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div formtarget="bar">Hello.</div>
+--
+formtarget :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+formtarget = attribute " formtarget=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE formtarget #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @headers@ attribute.
+--
+-- Example:
+--
+-- > div ! headers "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div headers="bar">Hello.</div>
+--
+headers :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+headers = attribute " headers=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE headers #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @height@ attribute.
+--
+-- Example:
+--
+-- > div ! height "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div height="bar">Hello.</div>
+--
+height :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+height = attribute " height=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE height #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @hidden@ attribute.
+--
+-- Example:
+--
+-- > div ! hidden "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div hidden="bar">Hello.</div>
+--
+hidden :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+hidden = attribute " hidden=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE hidden #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @high@ attribute.
+--
+-- Example:
+--
+-- > div ! high "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div high="bar">Hello.</div>
+--
+high :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+high = attribute " high=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE high #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @href@ attribute.
+--
+-- Example:
+--
+-- > div ! href "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div href="bar">Hello.</div>
+--
+href :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+href = attribute " href=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE href #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @hreflang@ attribute.
+--
+-- Example:
+--
+-- > div ! hreflang "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div hreflang="bar">Hello.</div>
+--
+hreflang :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+hreflang = attribute " hreflang=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE hreflang #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @http-equiv@ attribute.
+--
+-- Example:
+--
+-- > div ! http_equiv "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div http-equiv="bar">Hello.</div>
+--
+http_equiv :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+http_equiv = attribute " http-equiv=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE http_equiv #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @icon@ attribute.
+--
+-- Example:
+--
+-- > div ! icon "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div icon="bar">Hello.</div>
+--
+icon :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+icon = attribute " icon=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE icon #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @id@ attribute.
+--
+-- Example:
+--
+-- > div ! id "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div id="bar">Hello.</div>
+--
+id :: AttributeValue  -- ^ Attribute value.                                     -- ./Util/GenerateHtmlCombinators.hs:260
+   -> Attribute       -- ^ Resulting attribute.                                 -- ./Util/GenerateHtmlCombinators.hs:261
+id = attribute " id=\""                                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE id #-}                                                               -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @ismap@ attribute.
+--
+-- Example:
+--
+-- > div ! ismap "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div ismap="bar">Hello.</div>
+--
+ismap :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+ismap = attribute " ismap=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE ismap #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @item@ attribute.
+--
+-- Example:
+--
+-- > div ! item "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div item="bar">Hello.</div>
+--
+item :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+item = attribute " item=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE item #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @itemprop@ attribute.
+--
+-- Example:
+--
+-- > div ! itemprop "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div itemprop="bar">Hello.</div>
+--
+itemprop :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+itemprop = attribute " itemprop=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE itemprop #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @keytype@ attribute.
+--
+-- Example:
+--
+-- > div ! keytype "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div keytype="bar">Hello.</div>
+--
+keytype :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+keytype = attribute " keytype=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE keytype #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @label@ attribute.
+--
+-- Example:
+--
+-- > div ! label "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div label="bar">Hello.</div>
+--
+label :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+label = attribute " label=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE label #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @lang@ attribute.
+--
+-- Example:
+--
+-- > div ! lang "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div lang="bar">Hello.</div>
+--
+lang :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+lang = attribute " lang=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE lang #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @list@ attribute.
+--
+-- Example:
+--
+-- > div ! list "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div list="bar">Hello.</div>
+--
+list :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+list = attribute " list=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE list #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @loop@ attribute.
+--
+-- Example:
+--
+-- > div ! loop "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div loop="bar">Hello.</div>
+--
+loop :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+loop = attribute " loop=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE loop #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @low@ attribute.
+--
+-- Example:
+--
+-- > div ! low "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div low="bar">Hello.</div>
+--
+low :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+low = attribute " low=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE low #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @manifest@ attribute.
+--
+-- Example:
+--
+-- > div ! manifest "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div manifest="bar">Hello.</div>
+--
+manifest :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+manifest = attribute " manifest=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE manifest #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @max@ attribute.
+--
+-- Example:
+--
+-- > div ! max "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div max="bar">Hello.</div>
+--
+max :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+max = attribute " max=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE max #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @maxlength@ attribute.
+--
+-- Example:
+--
+-- > div ! maxlength "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div maxlength="bar">Hello.</div>
+--
+maxlength :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+maxlength = attribute " maxlength=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE maxlength #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @media@ attribute.
+--
+-- Example:
+--
+-- > div ! media "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div media="bar">Hello.</div>
+--
+media :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+media = attribute " media=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE media #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @method@ attribute.
+--
+-- Example:
+--
+-- > div ! method "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div method="bar">Hello.</div>
+--
+method :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+method = attribute " method=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE method #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @min@ attribute.
+--
+-- Example:
+--
+-- > div ! min "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div min="bar">Hello.</div>
+--
+min :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+min = attribute " min=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE min #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @multiple@ attribute.
+--
+-- Example:
+--
+-- > div ! multiple "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div multiple="bar">Hello.</div>
+--
+multiple :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+multiple = attribute " multiple=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE multiple #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @name@ attribute.
+--
+-- Example:
+--
+-- > div ! name "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div name="bar">Hello.</div>
+--
+name :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+name = attribute " name=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE name #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @novalidate@ attribute.
+--
+-- Example:
+--
+-- > div ! novalidate "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div novalidate="bar">Hello.</div>
+--
+novalidate :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+novalidate = attribute " novalidate=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE novalidate #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onbeforeonload@ attribute.
+--
+-- Example:
+--
+-- > div ! onbeforeonload "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onbeforeonload="bar">Hello.</div>
+--
+onbeforeonload :: AttributeValue  -- ^ Attribute value.                         -- ./Util/GenerateHtmlCombinators.hs:260
+               -> Attribute       -- ^ Resulting attribute.                     -- ./Util/GenerateHtmlCombinators.hs:261
+onbeforeonload = attribute " onbeforeonload=\""                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onbeforeonload #-}                                                   -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onbeforeprint@ attribute.
+--
+-- Example:
+--
+-- > div ! onbeforeprint "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onbeforeprint="bar">Hello.</div>
+--
+onbeforeprint :: AttributeValue  -- ^ Attribute value.                          -- ./Util/GenerateHtmlCombinators.hs:260
+              -> Attribute       -- ^ Resulting attribute.                      -- ./Util/GenerateHtmlCombinators.hs:261
+onbeforeprint = attribute " onbeforeprint=\""                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onbeforeprint #-}                                                    -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @oncanplay@ attribute.
+--
+-- Example:
+--
+-- > div ! oncanplay "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div oncanplay="bar">Hello.</div>
+--
+oncanplay :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+oncanplay = attribute " oncanplay=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE oncanplay #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @oncanplaythrough@ attribute.
+--
+-- Example:
+--
+-- > div ! oncanplaythrough "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div oncanplaythrough="bar">Hello.</div>
+--
+oncanplaythrough :: AttributeValue  -- ^ Attribute value.                       -- ./Util/GenerateHtmlCombinators.hs:260
+                 -> Attribute       -- ^ Resulting attribute.                   -- ./Util/GenerateHtmlCombinators.hs:261
+oncanplaythrough = attribute " oncanplaythrough=\""                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE oncanplaythrough #-}                                                 -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onchange@ attribute.
+--
+-- Example:
+--
+-- > div ! onchange "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onchange="bar">Hello.</div>
+--
+onchange :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onchange = attribute " onchange=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onchange #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onclick@ attribute.
+--
+-- Example:
+--
+-- > div ! onclick "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onclick="bar">Hello.</div>
+--
+onclick :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onclick = attribute " onclick=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onclick #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @oncontextmenu@ attribute.
+--
+-- Example:
+--
+-- > div ! oncontextmenu "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div oncontextmenu="bar">Hello.</div>
+--
+oncontextmenu :: AttributeValue  -- ^ Attribute value.                          -- ./Util/GenerateHtmlCombinators.hs:260
+              -> Attribute       -- ^ Resulting attribute.                      -- ./Util/GenerateHtmlCombinators.hs:261
+oncontextmenu = attribute " oncontextmenu=\""                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE oncontextmenu #-}                                                    -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @ondblclick@ attribute.
+--
+-- Example:
+--
+-- > div ! ondblclick "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div ondblclick="bar">Hello.</div>
+--
+ondblclick :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+ondblclick = attribute " ondblclick=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE ondblclick #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @ondrag@ attribute.
+--
+-- Example:
+--
+-- > div ! ondrag "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div ondrag="bar">Hello.</div>
+--
+ondrag :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+ondrag = attribute " ondrag=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE ondrag #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @ondragend@ attribute.
+--
+-- Example:
+--
+-- > div ! ondragend "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div ondragend="bar">Hello.</div>
+--
+ondragend :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+ondragend = attribute " ondragend=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE ondragend #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @ondragenter@ attribute.
+--
+-- Example:
+--
+-- > div ! ondragenter "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div ondragenter="bar">Hello.</div>
+--
+ondragenter :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+ondragenter = attribute " ondragenter=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE ondragenter #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @ondragleave@ attribute.
+--
+-- Example:
+--
+-- > div ! ondragleave "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div ondragleave="bar">Hello.</div>
+--
+ondragleave :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+ondragleave = attribute " ondragleave=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE ondragleave #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @ondragover@ attribute.
+--
+-- Example:
+--
+-- > div ! ondragover "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div ondragover="bar">Hello.</div>
+--
+ondragover :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+ondragover = attribute " ondragover=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE ondragover #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @ondragstart@ attribute.
+--
+-- Example:
+--
+-- > div ! ondragstart "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div ondragstart="bar">Hello.</div>
+--
+ondragstart :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+ondragstart = attribute " ondragstart=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE ondragstart #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @ondrop@ attribute.
+--
+-- Example:
+--
+-- > div ! ondrop "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div ondrop="bar">Hello.</div>
+--
+ondrop :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+ondrop = attribute " ondrop=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE ondrop #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @ondurationchange@ attribute.
+--
+-- Example:
+--
+-- > div ! ondurationchange "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div ondurationchange="bar">Hello.</div>
+--
+ondurationchange :: AttributeValue  -- ^ Attribute value.                       -- ./Util/GenerateHtmlCombinators.hs:260
+                 -> Attribute       -- ^ Resulting attribute.                   -- ./Util/GenerateHtmlCombinators.hs:261
+ondurationchange = attribute " ondurationchange=\""                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE ondurationchange #-}                                                 -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onemptied@ attribute.
+--
+-- Example:
+--
+-- > div ! onemptied "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onemptied="bar">Hello.</div>
+--
+onemptied :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+onemptied = attribute " onemptied=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onemptied #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onended@ attribute.
+--
+-- Example:
+--
+-- > div ! onended "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onended="bar">Hello.</div>
+--
+onended :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onended = attribute " onended=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onended #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onerror@ attribute.
+--
+-- Example:
+--
+-- > div ! onerror "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onerror="bar">Hello.</div>
+--
+onerror :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onerror = attribute " onerror=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onerror #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onfocus@ attribute.
+--
+-- Example:
+--
+-- > div ! onfocus "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onfocus="bar">Hello.</div>
+--
+onfocus :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onfocus = attribute " onfocus=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onfocus #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onformchange@ attribute.
+--
+-- Example:
+--
+-- > div ! onformchange "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onformchange="bar">Hello.</div>
+--
+onformchange :: AttributeValue  -- ^ Attribute value.                           -- ./Util/GenerateHtmlCombinators.hs:260
+             -> Attribute       -- ^ Resulting attribute.                       -- ./Util/GenerateHtmlCombinators.hs:261
+onformchange = attribute " onformchange=\""                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onformchange #-}                                                     -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onforminput@ attribute.
+--
+-- Example:
+--
+-- > div ! onforminput "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onforminput="bar">Hello.</div>
+--
+onforminput :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+onforminput = attribute " onforminput=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onforminput #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onhaschange@ attribute.
+--
+-- Example:
+--
+-- > div ! onhaschange "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onhaschange="bar">Hello.</div>
+--
+onhaschange :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+onhaschange = attribute " onhaschange=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onhaschange #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @oninput@ attribute.
+--
+-- Example:
+--
+-- > div ! oninput "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div oninput="bar">Hello.</div>
+--
+oninput :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+oninput = attribute " oninput=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE oninput #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @oninvalid@ attribute.
+--
+-- Example:
+--
+-- > div ! oninvalid "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div oninvalid="bar">Hello.</div>
+--
+oninvalid :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+oninvalid = attribute " oninvalid=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE oninvalid #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onkeydown@ attribute.
+--
+-- Example:
+--
+-- > div ! onkeydown "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onkeydown="bar">Hello.</div>
+--
+onkeydown :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+onkeydown = attribute " onkeydown=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onkeydown #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onkeyup@ attribute.
+--
+-- Example:
+--
+-- > div ! onkeyup "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onkeyup="bar">Hello.</div>
+--
+onkeyup :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onkeyup = attribute " onkeyup=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onkeyup #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onload@ attribute.
+--
+-- Example:
+--
+-- > div ! onload "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onload="bar">Hello.</div>
+--
+onload :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+onload = attribute " onload=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onload #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onloadeddata@ attribute.
+--
+-- Example:
+--
+-- > div ! onloadeddata "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onloadeddata="bar">Hello.</div>
+--
+onloadeddata :: AttributeValue  -- ^ Attribute value.                           -- ./Util/GenerateHtmlCombinators.hs:260
+             -> Attribute       -- ^ Resulting attribute.                       -- ./Util/GenerateHtmlCombinators.hs:261
+onloadeddata = attribute " onloadeddata=\""                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onloadeddata #-}                                                     -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onloadedmetadata@ attribute.
+--
+-- Example:
+--
+-- > div ! onloadedmetadata "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onloadedmetadata="bar">Hello.</div>
+--
+onloadedmetadata :: AttributeValue  -- ^ Attribute value.                       -- ./Util/GenerateHtmlCombinators.hs:260
+                 -> Attribute       -- ^ Resulting attribute.                   -- ./Util/GenerateHtmlCombinators.hs:261
+onloadedmetadata = attribute " onloadedmetadata=\""                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onloadedmetadata #-}                                                 -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onloadstart@ attribute.
+--
+-- Example:
+--
+-- > div ! onloadstart "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onloadstart="bar">Hello.</div>
+--
+onloadstart :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+onloadstart = attribute " onloadstart=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onloadstart #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmessage@ attribute.
+--
+-- Example:
+--
+-- > div ! onmessage "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmessage="bar">Hello.</div>
+--
+onmessage :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+onmessage = attribute " onmessage=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmessage #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmousedown@ attribute.
+--
+-- Example:
+--
+-- > div ! onmousedown "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmousedown="bar">Hello.</div>
+--
+onmousedown :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+onmousedown = attribute " onmousedown=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmousedown #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmousemove@ attribute.
+--
+-- Example:
+--
+-- > div ! onmousemove "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmousemove="bar">Hello.</div>
+--
+onmousemove :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+onmousemove = attribute " onmousemove=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmousemove #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmouseout@ attribute.
+--
+-- Example:
+--
+-- > div ! onmouseout "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmouseout="bar">Hello.</div>
+--
+onmouseout :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+onmouseout = attribute " onmouseout=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmouseout #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmouseover@ attribute.
+--
+-- Example:
+--
+-- > div ! onmouseover "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmouseover="bar">Hello.</div>
+--
+onmouseover :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+onmouseover = attribute " onmouseover=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmouseover #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmouseup@ attribute.
+--
+-- Example:
+--
+-- > div ! onmouseup "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmouseup="bar">Hello.</div>
+--
+onmouseup :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+onmouseup = attribute " onmouseup=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmouseup #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onmousewheel@ attribute.
+--
+-- Example:
+--
+-- > div ! onmousewheel "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onmousewheel="bar">Hello.</div>
+--
+onmousewheel :: AttributeValue  -- ^ Attribute value.                           -- ./Util/GenerateHtmlCombinators.hs:260
+             -> Attribute       -- ^ Resulting attribute.                       -- ./Util/GenerateHtmlCombinators.hs:261
+onmousewheel = attribute " onmousewheel=\""                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onmousewheel #-}                                                     -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @ononline@ attribute.
+--
+-- Example:
+--
+-- > div ! ononline "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div ononline="bar">Hello.</div>
+--
+ononline :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+ononline = attribute " ononline=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE ononline #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onpagehide@ attribute.
+--
+-- Example:
+--
+-- > div ! onpagehide "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onpagehide="bar">Hello.</div>
+--
+onpagehide :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+onpagehide = attribute " onpagehide=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onpagehide #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onpageshow@ attribute.
+--
+-- Example:
+--
+-- > div ! onpageshow "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onpageshow="bar">Hello.</div>
+--
+onpageshow :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+onpageshow = attribute " onpageshow=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onpageshow #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onpause@ attribute.
+--
+-- Example:
+--
+-- > div ! onpause "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onpause="bar">Hello.</div>
+--
+onpause :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+onpause = attribute " onpause=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onpause #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onplay@ attribute.
+--
+-- Example:
+--
+-- > div ! onplay "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onplay="bar">Hello.</div>
+--
+onplay :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+onplay = attribute " onplay=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onplay #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onplaying@ attribute.
+--
+-- Example:
+--
+-- > div ! onplaying "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onplaying="bar">Hello.</div>
+--
+onplaying :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+onplaying = attribute " onplaying=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onplaying #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onprogress@ attribute.
+--
+-- Example:
+--
+-- > div ! onprogress "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onprogress="bar">Hello.</div>
+--
+onprogress :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+onprogress = attribute " onprogress=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onprogress #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onpropstate@ attribute.
+--
+-- Example:
+--
+-- > div ! onpropstate "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onpropstate="bar">Hello.</div>
+--
+onpropstate :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+onpropstate = attribute " onpropstate=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onpropstate #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onratechange@ attribute.
+--
+-- Example:
+--
+-- > div ! onratechange "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onratechange="bar">Hello.</div>
+--
+onratechange :: AttributeValue  -- ^ Attribute value.                           -- ./Util/GenerateHtmlCombinators.hs:260
+             -> Attribute       -- ^ Resulting attribute.                       -- ./Util/GenerateHtmlCombinators.hs:261
+onratechange = attribute " onratechange=\""                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onratechange #-}                                                     -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onreadystatechange@ attribute.
+--
+-- Example:
+--
+-- > div ! onreadystatechange "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onreadystatechange="bar">Hello.</div>
+--
+onreadystatechange :: AttributeValue  -- ^ Attribute value.                     -- ./Util/GenerateHtmlCombinators.hs:260
+                   -> Attribute       -- ^ Resulting attribute.                 -- ./Util/GenerateHtmlCombinators.hs:261
+onreadystatechange = attribute " onreadystatechange=\""                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onreadystatechange #-}                                               -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onredo@ attribute.
+--
+-- Example:
+--
+-- > div ! onredo "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onredo="bar">Hello.</div>
+--
+onredo :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+onredo = attribute " onredo=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onredo #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onresize@ attribute.
+--
+-- Example:
+--
+-- > div ! onresize "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onresize="bar">Hello.</div>
+--
+onresize :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onresize = attribute " onresize=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onresize #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onscroll@ attribute.
+--
+-- Example:
+--
+-- > div ! onscroll "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onscroll="bar">Hello.</div>
+--
+onscroll :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onscroll = attribute " onscroll=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onscroll #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onseeked@ attribute.
+--
+-- Example:
+--
+-- > div ! onseeked "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onseeked="bar">Hello.</div>
+--
+onseeked :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onseeked = attribute " onseeked=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onseeked #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onseeking@ attribute.
+--
+-- Example:
+--
+-- > div ! onseeking "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onseeking="bar">Hello.</div>
+--
+onseeking :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+onseeking = attribute " onseeking=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onseeking #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onselect@ attribute.
+--
+-- Example:
+--
+-- > div ! onselect "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onselect="bar">Hello.</div>
+--
+onselect :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onselect = attribute " onselect=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onselect #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onstalled@ attribute.
+--
+-- Example:
+--
+-- > div ! onstalled "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onstalled="bar">Hello.</div>
+--
+onstalled :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+onstalled = attribute " onstalled=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onstalled #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onstorage@ attribute.
+--
+-- Example:
+--
+-- > div ! onstorage "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onstorage="bar">Hello.</div>
+--
+onstorage :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+onstorage = attribute " onstorage=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onstorage #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onsubmit@ attribute.
+--
+-- Example:
+--
+-- > div ! onsubmit "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onsubmit="bar">Hello.</div>
+--
+onsubmit :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onsubmit = attribute " onsubmit=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onsubmit #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onsuspend@ attribute.
+--
+-- Example:
+--
+-- > div ! onsuspend "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onsuspend="bar">Hello.</div>
+--
+onsuspend :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+onsuspend = attribute " onsuspend=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onsuspend #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @ontimeupdate@ attribute.
+--
+-- Example:
+--
+-- > div ! ontimeupdate "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div ontimeupdate="bar">Hello.</div>
+--
+ontimeupdate :: AttributeValue  -- ^ Attribute value.                           -- ./Util/GenerateHtmlCombinators.hs:260
+             -> Attribute       -- ^ Resulting attribute.                       -- ./Util/GenerateHtmlCombinators.hs:261
+ontimeupdate = attribute " ontimeupdate=\""                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE ontimeupdate #-}                                                     -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onundo@ attribute.
+--
+-- Example:
+--
+-- > div ! onundo "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onundo="bar">Hello.</div>
+--
+onundo :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+onundo = attribute " onundo=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onundo #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onunload@ attribute.
+--
+-- Example:
+--
+-- > div ! onunload "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onunload="bar">Hello.</div>
+--
+onunload :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+onunload = attribute " onunload=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onunload #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onvolumechange@ attribute.
+--
+-- Example:
+--
+-- > div ! onvolumechange "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onvolumechange="bar">Hello.</div>
+--
+onvolumechange :: AttributeValue  -- ^ Attribute value.                         -- ./Util/GenerateHtmlCombinators.hs:260
+               -> Attribute       -- ^ Resulting attribute.                     -- ./Util/GenerateHtmlCombinators.hs:261
+onvolumechange = attribute " onvolumechange=\""                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onvolumechange #-}                                                   -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @onwaiting@ attribute.
+--
+-- Example:
+--
+-- > div ! onwaiting "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div onwaiting="bar">Hello.</div>
+--
+onwaiting :: AttributeValue  -- ^ Attribute value.                              -- ./Util/GenerateHtmlCombinators.hs:260
+          -> Attribute       -- ^ Resulting attribute.                          -- ./Util/GenerateHtmlCombinators.hs:261
+onwaiting = attribute " onwaiting=\""                                           -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE onwaiting #-}                                                        -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @open@ attribute.
+--
+-- Example:
+--
+-- > div ! open "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div open="bar">Hello.</div>
+--
+open :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+open = attribute " open=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE open #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @optimum@ attribute.
+--
+-- Example:
+--
+-- > div ! optimum "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div optimum="bar">Hello.</div>
+--
+optimum :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+optimum = attribute " optimum=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE optimum #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @pattern@ attribute.
+--
+-- Example:
+--
+-- > div ! pattern "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div pattern="bar">Hello.</div>
+--
+pattern :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+pattern = attribute " pattern=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE pattern #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @ping@ attribute.
+--
+-- Example:
+--
+-- > div ! ping "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div ping="bar">Hello.</div>
+--
+ping :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+ping = attribute " ping=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE ping #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @placeholder@ attribute.
+--
+-- Example:
+--
+-- > div ! placeholder "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div placeholder="bar">Hello.</div>
+--
+placeholder :: AttributeValue  -- ^ Attribute value.                            -- ./Util/GenerateHtmlCombinators.hs:260
+            -> Attribute       -- ^ Resulting attribute.                        -- ./Util/GenerateHtmlCombinators.hs:261
+placeholder = attribute " placeholder=\""                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE placeholder #-}                                                      -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @preload@ attribute.
+--
+-- Example:
+--
+-- > div ! preload "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div preload="bar">Hello.</div>
+--
+preload :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+preload = attribute " preload=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE preload #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @pubdate@ attribute.
+--
+-- Example:
+--
+-- > div ! pubdate "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div pubdate="bar">Hello.</div>
+--
+pubdate :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+pubdate = attribute " pubdate=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE pubdate #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @radiogroup@ attribute.
+--
+-- Example:
+--
+-- > div ! radiogroup "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div radiogroup="bar">Hello.</div>
+--
+radiogroup :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+radiogroup = attribute " radiogroup=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE radiogroup #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @readonly@ attribute.
+--
+-- Example:
+--
+-- > div ! readonly "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div readonly="bar">Hello.</div>
+--
+readonly :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+readonly = attribute " readonly=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE readonly #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @rel@ attribute.
+--
+-- Example:
+--
+-- > div ! rel "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div rel="bar">Hello.</div>
+--
+rel :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+rel = attribute " rel=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE rel #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @required@ attribute.
+--
+-- Example:
+--
+-- > div ! required "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div required="bar">Hello.</div>
+--
+required :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+required = attribute " required=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE required #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @reversed@ attribute.
+--
+-- Example:
+--
+-- > div ! reversed "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div reversed="bar">Hello.</div>
+--
+reversed :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+reversed = attribute " reversed=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE reversed #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @rows@ attribute.
+--
+-- Example:
+--
+-- > div ! rows "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div rows="bar">Hello.</div>
+--
+rows :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+rows = attribute " rows=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE rows #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @rowspan@ attribute.
+--
+-- Example:
+--
+-- > div ! rowspan "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div rowspan="bar">Hello.</div>
+--
+rowspan :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+rowspan = attribute " rowspan=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE rowspan #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @sandbox@ attribute.
+--
+-- Example:
+--
+-- > div ! sandbox "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div sandbox="bar">Hello.</div>
+--
+sandbox :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+sandbox = attribute " sandbox=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE sandbox #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @scope@ attribute.
+--
+-- Example:
+--
+-- > div ! scope "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div scope="bar">Hello.</div>
+--
+scope :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+scope = attribute " scope=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE scope #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @scoped@ attribute.
+--
+-- Example:
+--
+-- > div ! scoped "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div scoped="bar">Hello.</div>
+--
+scoped :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+scoped = attribute " scoped=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE scoped #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @seamless@ attribute.
+--
+-- Example:
+--
+-- > div ! seamless "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div seamless="bar">Hello.</div>
+--
+seamless :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+seamless = attribute " seamless=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE seamless #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @selected@ attribute.
+--
+-- Example:
+--
+-- > div ! selected "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div selected="bar">Hello.</div>
+--
+selected :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+selected = attribute " selected=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE selected #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @shape@ attribute.
+--
+-- Example:
+--
+-- > div ! shape "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div shape="bar">Hello.</div>
+--
+shape :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+shape = attribute " shape=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE shape #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @size@ attribute.
+--
+-- Example:
+--
+-- > div ! size "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div size="bar">Hello.</div>
+--
+size :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+size = attribute " size=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE size #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @sizes@ attribute.
+--
+-- Example:
+--
+-- > div ! sizes "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div sizes="bar">Hello.</div>
+--
+sizes :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+sizes = attribute " sizes=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE sizes #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @span@ attribute.
+--
+-- Example:
+--
+-- > div ! span "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div span="bar">Hello.</div>
+--
+span :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+span = attribute " span=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE span #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @spellcheck@ attribute.
+--
+-- Example:
+--
+-- > div ! spellcheck "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div spellcheck="bar">Hello.</div>
+--
+spellcheck :: AttributeValue  -- ^ Attribute value.                             -- ./Util/GenerateHtmlCombinators.hs:260
+           -> Attribute       -- ^ Resulting attribute.                         -- ./Util/GenerateHtmlCombinators.hs:261
+spellcheck = attribute " spellcheck=\""                                         -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE spellcheck #-}                                                       -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @src@ attribute.
+--
+-- Example:
+--
+-- > div ! src "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div src="bar">Hello.</div>
+--
+src :: AttributeValue  -- ^ Attribute value.                                    -- ./Util/GenerateHtmlCombinators.hs:260
+    -> Attribute       -- ^ Resulting attribute.                                -- ./Util/GenerateHtmlCombinators.hs:261
+src = attribute " src=\""                                                       -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE src #-}                                                              -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @srcdoc@ attribute.
+--
+-- Example:
+--
+-- > div ! srcdoc "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div srcdoc="bar">Hello.</div>
+--
+srcdoc :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+srcdoc = attribute " srcdoc=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE srcdoc #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @start@ attribute.
+--
+-- Example:
+--
+-- > div ! start "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div start="bar">Hello.</div>
+--
+start :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+start = attribute " start=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE start #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @step@ attribute.
+--
+-- Example:
+--
+-- > div ! step "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div step="bar">Hello.</div>
+--
+step :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+step = attribute " step=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE step #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @style@ attribute.
+--
+-- Example:
+--
+-- > div ! style "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div style="bar">Hello.</div>
+--
+style :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+style = attribute " style=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE style #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @subject@ attribute.
+--
+-- Example:
+--
+-- > div ! subject "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div subject="bar">Hello.</div>
+--
+subject :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+subject = attribute " subject=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE subject #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @summary@ attribute.
+--
+-- Example:
+--
+-- > div ! summary "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div summary="bar">Hello.</div>
+--
+summary :: AttributeValue  -- ^ Attribute value.                                -- ./Util/GenerateHtmlCombinators.hs:260
+        -> Attribute       -- ^ Resulting attribute.                            -- ./Util/GenerateHtmlCombinators.hs:261
+summary = attribute " summary=\""                                               -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE summary #-}                                                          -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @tabindex@ attribute.
+--
+-- Example:
+--
+-- > div ! tabindex "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div tabindex="bar">Hello.</div>
+--
+tabindex :: AttributeValue  -- ^ Attribute value.                               -- ./Util/GenerateHtmlCombinators.hs:260
+         -> Attribute       -- ^ Resulting attribute.                           -- ./Util/GenerateHtmlCombinators.hs:261
+tabindex = attribute " tabindex=\""                                             -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE tabindex #-}                                                         -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @target@ attribute.
+--
+-- Example:
+--
+-- > div ! target "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div target="bar">Hello.</div>
+--
+target :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+target = attribute " target=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE target #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @title@ attribute.
+--
+-- Example:
+--
+-- > div ! title "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div title="bar">Hello.</div>
+--
+title :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+title = attribute " title=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE title #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @type@ attribute.
+--
+-- Example:
+--
+-- > div ! type_ "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div type="bar">Hello.</div>
+--
+type_ :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+type_ = attribute " type=\""                                                    -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE type_ #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @usemap@ attribute.
+--
+-- Example:
+--
+-- > div ! usemap "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div usemap="bar">Hello.</div>
+--
+usemap :: AttributeValue  -- ^ Attribute value.                                 -- ./Util/GenerateHtmlCombinators.hs:260
+       -> Attribute       -- ^ Resulting attribute.                             -- ./Util/GenerateHtmlCombinators.hs:261
+usemap = attribute " usemap=\""                                                 -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE usemap #-}                                                           -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @value@ attribute.
+--
+-- Example:
+--
+-- > div ! value "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div value="bar">Hello.</div>
+--
+value :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+value = attribute " value=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE value #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @width@ attribute.
+--
+-- Example:
+--
+-- > div ! width "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div width="bar">Hello.</div>
+--
+width :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+width = attribute " width=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE width #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @wrap@ attribute.
+--
+-- Example:
+--
+-- > div ! wrap "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div wrap="bar">Hello.</div>
+--
+wrap :: AttributeValue  -- ^ Attribute value.                                   -- ./Util/GenerateHtmlCombinators.hs:260
+     -> Attribute       -- ^ Resulting attribute.                               -- ./Util/GenerateHtmlCombinators.hs:261
+wrap = attribute " wrap=\""                                                     -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE wrap #-}                                                             -- ./Util/GenerateHtmlCombinators.hs:263
+
+-- | Combinator for the @xmlns@ attribute.
+--
+-- Example:
+--
+-- > div ! xmlns "bar" $ "Hello."
+--
+-- Result:
+--
+-- > <div xmlns="bar">Hello.</div>
+--
+xmlns :: AttributeValue  -- ^ Attribute value.                                  -- ./Util/GenerateHtmlCombinators.hs:260
+      -> Attribute       -- ^ Resulting attribute.                              -- ./Util/GenerateHtmlCombinators.hs:261
+xmlns = attribute " xmlns=\""                                                   -- ./Util/GenerateHtmlCombinators.hs:262
+{-# INLINE xmlns #-}                                                            -- ./Util/GenerateHtmlCombinators.hs:263
diff --git a/Text/Blaze/Internal.hs b/Text/Blaze/Internal.hs
new file mode 100644
--- /dev/null
+++ b/Text/Blaze/Internal.hs
@@ -0,0 +1,340 @@
+{-# LANGUAGE OverloadedStrings, GeneralizedNewtypeDeriving, Rank2Types,
+             FlexibleInstances, ExistentialQuantification #-}
+-- | The BlazeHtml core, consisting of functions that offer the power to
+-- generate custom HTML elements. It also offers user-centric functions, which
+-- are exposed through 'Text.Blaze'.
+--
+module Text.Blaze.Internal
+    (
+      -- * Important types.
+      ChoiceString (..)
+    , StaticString (..)
+    , HtmlM (..)
+    , Html
+    , Tag
+    , Attribute
+    , AttributeValue
+
+      -- * Creating custom tags and attributes.
+    , attribute
+    , dataAttribute
+
+      -- * Converting values to HTML.
+    , text
+    , preEscapedText
+    , string
+    , preEscapedString
+    , showHtml
+    , preEscapedShowHtml
+    , unsafeByteString
+
+      -- * Converting values to tags.
+    , textTag
+    , stringTag
+
+      -- * Converting values to attribute values.
+    , textValue
+    , preEscapedTextValue
+    , stringValue
+    , preEscapedStringValue
+    , unsafeByteStringValue
+
+      -- * Setting attributes
+    , (!)
+
+      -- * Modifying HTML elements
+    , external
+    ) where
+
+import Data.Monoid (Monoid, mappend, mempty, mconcat)
+
+import Data.ByteString.Char8 (ByteString)
+import qualified Data.ByteString as S
+import Data.Text (Text)
+import qualified Data.Text as T
+import qualified Data.Text.Encoding as T
+import GHC.Exts (IsString (..))
+
+-- | A static string that supports efficient output to all possible backends.
+--
+data StaticString = StaticString
+    { getString         :: String -> String  -- ^ Appending haskell string
+    , getUtf8ByteString :: S.ByteString      -- ^ UTF-8 encoded bytestring
+    , getText           :: Text              -- ^ Text value
+    }
+
+-- 'StaticString's should only be converted from string literals, as far as I
+-- can see.
+--
+instance IsString StaticString where
+    fromString s = let t = T.pack s
+                   in StaticString (s ++) (T.encodeUtf8 t) t
+
+-- | A string denoting input from different string representations.
+--
+data ChoiceString
+    -- | Static data
+    = Static {-# UNPACK #-} !StaticString
+    -- | A Haskell String
+    | String String
+    -- | A Text value
+    | Text Text
+    -- | An encoded bytestring
+    | ByteString S.ByteString
+    -- | A pre-escaped string
+    | PreEscaped ChoiceString
+    -- | External data in style/script tags, should be checked for validity
+    | External ChoiceString
+    -- | Concatenation
+    | AppendChoiceString ChoiceString ChoiceString
+    -- | Empty string
+    | EmptyChoiceString
+
+instance Monoid ChoiceString where
+    mempty = EmptyChoiceString
+    {-# INLINE mempty #-}
+    mappend = AppendChoiceString
+    {-# INLINE mappend #-}
+
+instance IsString ChoiceString where
+    fromString = String
+    {-# INLINE fromString #-}
+
+-- | The core HTML datatype.
+--
+data HtmlM a
+    -- | Open tag, end tag, content
+    = forall b. Parent StaticString StaticString (HtmlM b)
+    -- | Open tag, end tag
+    | Leaf StaticString StaticString
+    -- | HTML content
+    | Content ChoiceString
+    -- | Concatenation of two HTML pieces
+    | forall b c. Append (HtmlM b) (HtmlM c)
+    -- | Add an attribute to the inner HTML. Key, value, HTML to receive the
+    -- attribute.
+    | AddAttribute StaticString ChoiceString (HtmlM a)
+    -- | Add a custom attribute to the inner HTML.
+    | AddCustomAttribute ChoiceString ChoiceString (HtmlM a)
+    -- | Empty HTML.
+    | Empty
+
+-- | Simplification of the 'HtmlM' datatype.
+--
+type Html = HtmlM ()
+
+instance Monoid a => Monoid (HtmlM a) where
+    mempty = Empty
+    {-# INLINE mempty #-}
+    mappend x y = Append x y
+    {-# INLINE mappend #-}
+    mconcat = foldr Append Empty
+    {-# INLINE mconcat #-}
+
+instance Monad HtmlM where
+    return _ = Empty
+    {-# INLINE return #-}
+    (>>) = Append
+    {-# INLINE (>>) #-}
+    h1 >>= f = h1 >> f (error "_|_")
+    {-# INLINE (>>=) #-}
+
+instance IsString (HtmlM a) where
+    fromString = Content . fromString
+    {-# INLINE fromString #-}
+
+-- | Type for an HTML tag. This can be seen as an internal string type used by
+-- BlazeHtml.
+--
+newtype Tag = Tag { unTag :: StaticString }
+    deriving (IsString)
+
+-- | Type for an attribute.
+--
+newtype Attribute = Attribute (forall a. HtmlM a -> HtmlM a)
+
+-- | The type for the value part of an attribute.
+--
+newtype AttributeValue = AttributeValue { unAttributeValue :: ChoiceString }
+    deriving (IsString, Monoid)
+
+-- | Create an HTML attribute that can be applied to an HTML element later using
+-- the '!' operator.
+--
+attribute :: Tag             -- ^ Shared key string for the HTML attribute.
+          -> AttributeValue  -- ^ Value for the HTML attribute.
+          -> Attribute       -- ^ Resulting HTML attribute.
+attribute key value = Attribute $
+    AddAttribute (unTag key) (unAttributeValue value)
+{-# INLINE attribute #-}
+
+-- | From HTML 5 onwards, the user is able to specify custom data attributes.
+--
+-- An example:
+--
+-- > <p data-foo="bar">Hello.</p>
+--
+-- We support this in BlazeHtml using this funcion. The above fragment could
+-- be described using BlazeHtml with:
+--
+-- > p ! dataAttribute "foo" "bar" $ "Hello."
+--
+dataAttribute :: Tag             -- ^ Name of the attribute.
+              -> AttributeValue  -- ^ Value for the attribute.
+              -> Attribute       -- ^ Resulting HTML attribute.
+dataAttribute tag value = Attribute $
+    AddCustomAttribute
+        (Static "data-" `mappend` Static (unTag tag) `mappend` "=\"")
+        (unAttributeValue value)
+{-# INLINE dataAttribute #-}
+
+-- | Render text. Functions like these can be used to supply content in HTML.
+--
+text :: Text  -- ^ Text to render.
+     -> Html  -- ^ Resulting HTML fragment.
+text = Content . Text
+{-# INLINE text #-}
+
+-- | Render text without escaping.
+--
+preEscapedText :: Text  -- ^ Text to insert.
+               -> Html  -- Resulting HTML fragment.
+preEscapedText = Content . PreEscaped . Text
+{-# INLINE preEscapedText #-}
+
+-- | Create an HTML snippet from a 'String'.
+--
+string :: String  -- ^ String to insert.
+       -> Html    -- ^ Resulting HTML fragment.
+string = Content . String
+{-# INLINE string #-}
+
+-- | Create an HTML snippet from a 'String' without escaping
+--
+preEscapedString :: String  -- ^ String to insert.
+                 -> Html    -- ^ Resulting HTML fragment.
+preEscapedString = Content . PreEscaped . String
+{-# INLINE preEscapedString #-}
+
+-- | Create an HTML snippet from a datatype that instantiates 'Show'.
+--
+showHtml :: Show a
+         => a       -- ^ Value to insert.
+         -> Html    -- ^ Resulting HTML fragment.
+showHtml = string . show
+{-# INLINE showHtml #-}
+
+-- | Create an HTML snippet from a datatype that instantiates 'Show'. This
+-- function will not do any HTML entity escaping.
+--
+preEscapedShowHtml :: Show a
+                   => a     -- ^ Value to insert.
+                   -> Html  -- ^ Resulting HTML fragment.
+preEscapedShowHtml = preEscapedString . show
+{-# INLINE preEscapedShowHtml #-}
+
+-- | Insert a 'ByteString'. This is an unsafe operation:
+--
+-- * The 'ByteString' could have the wrong encoding.
+--
+-- * The 'ByteString' might contain illegal HTML characters (no escaping is
+--   done).
+--
+unsafeByteString :: ByteString  -- ^ Value to insert.
+                 -> Html        -- ^ Resulting HTML fragment.
+unsafeByteString = Content . ByteString
+{-# INLINE unsafeByteString #-}
+
+-- | Create a 'Tag' from some 'Text'.
+--
+textTag :: Text  -- ^ Text to create a tag from
+        -> Tag   -- ^ Resulting tag
+textTag t = Tag $ StaticString (T.unpack t ++) (T.encodeUtf8 t) t
+
+-- | Create a 'Tag' from a 'String'.
+--
+stringTag :: String  -- ^ String to create a tag from
+          -> Tag     -- ^ Resulting tag
+stringTag = Tag . fromString
+
+-- | Render an attribute value from 'Text'.
+--
+textValue :: Text            -- ^ The actual value.
+          -> AttributeValue  -- ^ Resulting attribute value.
+textValue = AttributeValue . Text
+{-# INLINE textValue #-}
+
+-- | Render an attribute value from 'Text' without escaping.
+--
+preEscapedTextValue :: Text            -- ^ Text to insert.
+                    -> AttributeValue  -- Resulting HTML fragment.
+preEscapedTextValue = AttributeValue . PreEscaped . Text
+{-# INLINE preEscapedTextValue #-}
+
+-- | Create an attribute value from a 'String'.
+--
+stringValue :: String -> AttributeValue
+stringValue = AttributeValue . String
+{-# INLINE stringValue #-}
+
+-- | Create an attribute value from a 'String' without escaping.
+--
+preEscapedStringValue :: String -> AttributeValue
+preEscapedStringValue = AttributeValue . PreEscaped . String
+{-# INLINE preEscapedStringValue #-}
+
+-- | Create an attribute value from a 'ByteString'. See 'unsafeByteString'
+-- for reasons why this might not be a good idea.
+--
+unsafeByteStringValue :: ByteString      -- ^ ByteString value
+                      -> AttributeValue  -- ^ Resulting attribute value
+unsafeByteStringValue = AttributeValue . ByteString
+
+class Attributable h where
+    -- | Apply an attribute to an element.
+    --
+    -- Example:
+    --
+    -- > img ! src "foo.png"
+    --
+    -- Result:
+    --
+    -- > <img src="foo.png" />
+    --
+    -- This can be used on nested elements as well.
+    --
+    -- Example:
+    --
+    -- > p ! style "float: right" $ "Hello!"
+    --
+    -- Result:
+    --
+    -- > <p style="float: right">Hello!</p>
+    --
+    (!) :: h -> Attribute -> h
+
+instance Attributable (HtmlM a) where
+    h ! (Attribute f) = f h
+    {-# INLINE (!) #-}
+
+instance Attributable (HtmlM a -> HtmlM b) where
+    h ! f = (! f) . h
+    {-# INLINE (!) #-}
+
+-- | Mark HTML as external data. External data can be:
+--
+-- * CSS data in a @<style>@ tag;
+--
+-- * Script data in a @<script>@ tag.
+--
+-- This function is applied automatically when using the @style@ or @script@
+-- combinators.
+--
+external :: HtmlM a -> HtmlM a
+external (Content x) = Content $ External x
+external (Append x y) = Append (external x) (external y)
+external (Parent x y z) = Parent x y $ external z
+external (AddAttribute x y z) = AddAttribute x y $ external z
+external (AddCustomAttribute x y z) = AddCustomAttribute x y $ external z
+external x = x
+{-# INLINE external #-}
diff --git a/Text/Blaze/Renderer/Pretty.hs b/Text/Blaze/Renderer/Pretty.hs
new file mode 100644
--- /dev/null
+++ b/Text/Blaze/Renderer/Pretty.hs
@@ -0,0 +1,44 @@
+-- | A renderer that produces pretty HTML, mostly meant for debugging purposes.
+--
+module Text.Blaze.Renderer.Pretty
+    ( renderHtml
+    ) where
+
+import Text.Blaze.Internal
+import Text.Blaze.Renderer.String (fromChoiceString)
+
+-- | Render some 'Html' to an appending 'String'.
+--
+renderString :: Html    -- ^ HTML to render
+             -> String  -- ^ String to append
+             -> String  -- ^ Resulting String
+renderString = go 0 id
+  where
+    go :: Int -> (String -> String) -> HtmlM b -> String -> String
+    go i attrs (Parent open close content) =
+        ind i . getString open . attrs . (">\n" ++) . go (inc i) id content
+              . ind i . getString close .  ('\n' :)
+    go i attrs (Leaf begin end) =
+        ind i . getString begin . attrs . getString end . ('\n' :)
+    go i attrs (AddAttribute key value h) = flip (go i) h $
+        getString key . fromChoiceString value . ('"' :) . attrs
+    go i attrs (AddCustomAttribute key value h) = flip (go i) h $
+        fromChoiceString key . fromChoiceString value . ('"' :) . attrs
+    go i _ (Content content) = ind i . fromChoiceString content . ('\n' :)
+    go i attrs (Append h1 h2) = go i attrs h1 . go i attrs h2
+    go _ _ Empty = id
+    {-# NOINLINE go #-}
+
+    -- Increase the indentation
+    inc = (+) 4
+
+    -- Produce appending indentation
+    ind i = (replicate i ' ' ++)
+{-# INLINE renderString #-}
+
+-- | Render HTML to a lazy 'String'. The result is prettified.
+--
+renderHtml :: Html    -- ^ HTML to render
+           -> String  -- ^ Resulting 'String'.
+renderHtml html = renderString html ""
+{-# INLINE renderHtml #-}
diff --git a/Text/Blaze/Renderer/String.hs b/Text/Blaze/Renderer/String.hs
new file mode 100644
--- /dev/null
+++ b/Text/Blaze/Renderer/String.hs
@@ -0,0 +1,82 @@
+-- | A renderer that produces a native Haskell 'String', mostly meant for
+-- debugging purposes.
+--
+{-# LANGUAGE OverloadedStrings #-}
+module Text.Blaze.Renderer.String
+    ( fromChoiceString
+    , renderHtml
+    ) where
+
+import Data.List (isInfixOf)
+
+import qualified Data.ByteString.Char8 as SBC
+import qualified Data.Text as T
+import qualified Data.ByteString as S
+
+import Text.Blaze.Internal
+
+-- | Escape HTML entities in a string
+--
+escapeHtmlEntities :: String  -- ^ String to escape
+                   -> String  -- ^ String to append
+                   -> String  -- ^ Resulting string
+escapeHtmlEntities []     k = k
+escapeHtmlEntities (c:cs) k = case c of
+    '<'  -> "&lt;"   ++ escapeHtmlEntities cs k
+    '>'  -> "&gt;"   ++ escapeHtmlEntities cs k
+    '&'  -> "&amp;"  ++ escapeHtmlEntities cs k
+    '"'  -> "&quot;" ++ escapeHtmlEntities cs k
+    '\'' -> "&apos;" ++ escapeHtmlEntities cs k
+    x    -> x : escapeHtmlEntities cs k
+
+-- | Render a 'ChoiceString'.
+--
+fromChoiceString :: ChoiceString  -- ^ String to render
+                 -> String        -- ^ String to append
+                 -> String        -- ^ Resulting string
+fromChoiceString (Static s)     = getString s
+fromChoiceString (String s)     = escapeHtmlEntities s
+fromChoiceString (Text s)       = escapeHtmlEntities $ T.unpack s
+fromChoiceString (ByteString s) = (SBC.unpack s ++)
+fromChoiceString (PreEscaped x) = case x of
+    String s -> (s ++)
+    Text   s -> (T.unpack s ++)
+    s        -> fromChoiceString s
+fromChoiceString (External x) = case x of
+    -- Check that the sequence "</" is *not* in the external data.
+    String s     -> if "</" `isInfixOf` s then id else (s ++)
+    Text   s     -> if "</" `T.isInfixOf` s then id else (T.unpack s ++)
+    ByteString s -> if "</" `S.isInfixOf` s then id else (SBC.unpack s ++)
+    s            -> fromChoiceString s
+fromChoiceString (AppendChoiceString x y) =
+    fromChoiceString x . fromChoiceString y
+fromChoiceString EmptyChoiceString = id
+{-# INLINE fromChoiceString #-}
+
+-- | Render some 'Html' to an appending 'String'.
+--
+renderString :: Html    -- ^ HTML to render
+             -> String  -- ^ String to append
+             -> String  -- ^ Resulting String
+renderString = go id 
+  where
+    go :: (String -> String) -> HtmlM b -> String -> String
+    go attrs (Parent open close content) =
+        getString open . attrs . ('>' :) . go id content . getString close
+    go attrs (Leaf begin end) = getString begin . attrs . getString end
+    go attrs (AddAttribute key value h) = flip go h $
+        getString key . fromChoiceString value . ('"' :) . attrs
+    go attrs (AddCustomAttribute key value h) = flip go h $
+        fromChoiceString key . fromChoiceString value . ('"' :) . attrs
+    go _ (Content content) = fromChoiceString content
+    go attrs (Append h1 h2) = go attrs h1 . go attrs h2
+    go _ Empty = id
+    {-# NOINLINE go #-}
+{-# INLINE renderString #-}
+
+-- | Render HTML to a lazy 'String'.
+--
+renderHtml :: Html    -- ^ HTML to render
+           -> String  -- ^ Resulting 'String'
+renderHtml html = renderString html ""
+{-# INLINE renderHtml #-}
diff --git a/Text/Blaze/Renderer/Utf8.hs b/Text/Blaze/Renderer/Utf8.hs
new file mode 100644
--- /dev/null
+++ b/Text/Blaze/Renderer/Utf8.hs
@@ -0,0 +1,80 @@
+{-# LANGUAGE OverloadedStrings #-}
+module Text.Blaze.Renderer.Utf8
+    ( renderHtml
+    ) where
+
+import Data.Monoid (mappend, mempty)
+import Data.List (isInfixOf)
+
+import qualified Data.ByteString.Lazy as L
+import qualified Data.Text as T (isInfixOf)
+import qualified Data.ByteString as S (isInfixOf)
+
+import Text.Blaze.Internal
+import Text.Blaze.Builder.Core (Builder)
+import qualified Text.Blaze.Builder.Core as B
+import qualified Text.Blaze.Builder.Utf8 as B
+import qualified Text.Blaze.Builder.Html as B
+
+-- | Render a 'ChoiceString'.
+--
+fromChoiceString :: ChoiceString  -- ^ String to render
+                 -> Builder       -- ^ Resulting builder
+fromChoiceString (Static s)     = B.fromByteString $ getUtf8ByteString s
+fromChoiceString (String s)     = B.fromHtmlEscapedString s
+fromChoiceString (Text s)       = B.fromHtmlEscapedText s
+fromChoiceString (ByteString s) = B.fromByteString s
+fromChoiceString (PreEscaped x) = case x of
+    String s -> B.fromString s
+    Text   s -> B.fromText s
+    s        -> fromChoiceString s
+fromChoiceString (External x) = case x of
+    -- Check that the sequence "</" is *not* in the external data.
+    String s     -> if "</" `isInfixOf` s then mempty else B.fromString s
+    Text   s     -> if "</" `T.isInfixOf` s then mempty else B.fromText s
+    ByteString s -> if "</" `S.isInfixOf` s then mempty else B.fromByteString s
+    s            -> fromChoiceString s
+fromChoiceString (AppendChoiceString x y) =
+    fromChoiceString x `mappend` fromChoiceString y
+fromChoiceString EmptyChoiceString = mempty
+{-# INLINE fromChoiceString #-}
+
+-- | Render some 'Html' to a 'Builder'.
+--
+renderBuilder :: Html     -- ^ HTML to render
+              -> Builder  -- ^ Resulting builder
+renderBuilder = go mempty 
+  where
+    go :: Builder -> HtmlM b -> Builder
+    go attrs (Parent open close content) =
+        B.fromByteString (getUtf8ByteString open)
+            `mappend` attrs
+            `mappend` B.fromChar '>'
+            `mappend` go mempty content
+            `mappend` B.fromByteString (getUtf8ByteString close)
+    go attrs (Leaf begin end) = 
+        B.fromByteString (getUtf8ByteString begin)
+            `mappend` attrs
+            `mappend` B.fromByteString (getUtf8ByteString end)
+    go attrs (AddAttribute key value h) =
+        go (B.fromByteString (getUtf8ByteString key)
+            `mappend` fromChoiceString value
+            `mappend` B.fromChar '"'
+            `mappend` attrs) h
+    go attrs (AddCustomAttribute key value h) =
+        go (fromChoiceString key
+            `mappend` fromChoiceString value
+            `mappend` B.fromChar '"'
+            `mappend` attrs) h
+    go _ (Content content)  = fromChoiceString content
+    go attrs (Append h1 h2) = go attrs h1 `mappend` go attrs h2
+    go _ Empty              = mempty
+    {-# NOINLINE go #-}
+{-# INLINE renderBuilder #-}
+
+-- | Render HTML to a lazy UTF-8 encoded 'L.ByteString.'
+--
+renderHtml :: Html          -- ^ HTML to render
+           -> L.ByteString  -- ^ Resulting 'L.ByteString'
+renderHtml = B.toLazyByteString . renderBuilder
+{-# INLINE renderHtml #-}
diff --git a/blaze-html.cabal b/blaze-html.cabal
--- a/blaze-html.cabal
+++ b/blaze-html.cabal
@@ -7,19 +7,18 @@
 -- The package version. See the Haskell package versioning policy
 -- (http://www.haskell.org/haskellwiki/Package_versioning_policy) for
 -- standards guiding when and how versions should be incremented.
-Version:             0.1.2
+Version:             0.2
 
 -- A short (one-line) description of the package.
 Synopsis:            A blazingly fast HTML combinator library.
 Description:         A blazingly fast HTML combinator library for the Haskell
-                     programming language.
-
--- A longer description of the package.
--- Description:         
+                     programming language. The Text.Blaze module is a good
+                     starting point, as well as this tutorial:
+                     <http://jaspervdj.be/blaze/tutorial.html>.
 
 -- URL for the project homepage or repository.
 Homepage:            http://jaspervdj.be/blaze
-Bug-Reports:         http://github.com/jaspervdj/BlazeHtml/issues
+Bug-Reports:         http://github.com/jaspervdj/blaze-html/issues
 
 -- The license under which the package is released.
 License:             BSD3
@@ -28,11 +27,11 @@
 License-file:        LICENSE
 
 -- The package author(s).
-Author:              Jasper Van der Jeugt
+Author:              Jasper Van der Jeugt, Simon Meier
 
 -- An email address to which users can send suggestions, bug reports,
 -- and patches.
-Maintainer:          jaspervdj@gmail.com
+Maintainer:          jaspervdj@gmail.com, simon.meier@inf.ethz.ch
 
 -- A copyright notice.
 -- Copyright:           
@@ -42,7 +41,7 @@
 
 Category:            Text
 
-Build-type:          Simple
+Build-type:          Custom
 
 -- Extra files to be distributed with the package, such as examples or
 -- a README.
@@ -53,24 +52,27 @@
 
 
 Library
-  -- Source directories
-  Hs-Source-Dirs:    src,
-                     lib/binary-0.5.0.2/src
+  Ghc-Options:       -Wall
 
   -- Modules exported by the library.
   Exposed-modules:   Text.Blaze
+                     Text.Blaze.Html4.FrameSet
+                     Text.Blaze.Html4.FrameSet.Attributes
                      Text.Blaze.Html4.Strict
                      Text.Blaze.Html4.Strict.Attributes
+                     Text.Blaze.Html4.Transitional
+                     Text.Blaze.Html4.Transitional.Attributes
                      Text.Blaze.Html5
                      Text.Blaze.Html5.Attributes
+                     Text.Blaze.Renderer.String
+                     Text.Blaze.Renderer.Pretty
+                     Text.Blaze.Renderer.Utf8
   
   -- Packages needed in order to build this package.
   Build-depends:     base >= 4 && < 5,
                      text >= 0.7,
-                     bytestring >= 0.9
+                     bytestring >= 0.9,
+                     blaze-builder == 0.1
   
   -- Modules not exported by this package.
-  Other-modules:     Data.Binary.Builder
-                     Text.Blaze.Internal
-                     Text.Blaze.Internal.Utf8Builder
-                     Text.Blaze.Internal.Utf8BuilderHtml
+  Other-modules:     Text.Blaze.Internal
diff --git a/lib/binary-0.5.0.2/src/Data/Binary/Builder.hs b/lib/binary-0.5.0.2/src/Data/Binary/Builder.hs
deleted file mode 100644
--- a/lib/binary-0.5.0.2/src/Data/Binary/Builder.hs
+++ /dev/null
@@ -1,481 +0,0 @@
-{-# LANGUAGE CPP #-}
-{-# OPTIONS_GHC -fglasgow-exts #-}
--- for unboxed shifts
-
------------------------------------------------------------------------------
--- |
--- Module      : Data.Binary.Builder
--- Copyright   : Lennart Kolmodin, Ross Paterson
--- License     : BSD3-style (see LICENSE)
--- 
--- Maintainer  : Lennart Kolmodin <kolmodin@dtek.chalmers.se>
--- Stability   : experimental
--- Portability : portable to Hugs and GHC
---
--- Efficient construction of lazy bytestrings.
---
------------------------------------------------------------------------------
-
-#if defined(__GLASGOW_HASKELL__) && !defined(__HADDOCK__)
-#include "MachDeps.h"
-#endif
-
-module Data.Binary.Builder (
-
-    -- * The Builder type
-      Builder
-    , toLazyByteString
-
-    -- * Constructing Builders
-    , empty
-    , singleton
-    , append
-    , fromByteString        -- :: S.ByteString -> Builder
-    , copyByteString        -- :: S.ByteString -> Builder
-    , fromLazyByteString    -- :: L.ByteString -> Builder
-    , fromUnsafeWrite
-    , fillBuffer
-    , forceNewBuffer
-
-    -- * Flushing the buffer state
-    , flush
-
-    -- * Derived Builders
-    -- ** Big-endian writes
-    , putWord16be           -- :: Word16 -> Builder
-    , putWord32be           -- :: Word32 -> Builder
-    , putWord64be           -- :: Word64 -> Builder
-
-    -- ** Little-endian writes
-    , putWord16le           -- :: Word16 -> Builder
-    , putWord32le           -- :: Word32 -> Builder
-    , putWord64le           -- :: Word64 -> Builder
-
-    -- ** Host-endian, unaligned writes
-    , putWordhost           -- :: Word -> Builder
-    , putWord16host         -- :: Word16 -> Builder
-    , putWord32host         -- :: Word32 -> Builder
-    , putWord64host         -- :: Word64 -> Builder
-
-  ) where
-
-import Foreign
-import Data.Monoid
-import Data.Word
-import qualified Data.ByteString      as S
-import qualified Data.ByteString.Lazy as L
-
-import Data.Text (Text)
-import qualified Data.Text as T
-
-#ifdef BYTESTRING_IN_BASE
-import Data.ByteString.Base (inlinePerformIO)
-import qualified Data.ByteString.Base as S
-#else
-import Data.ByteString.Internal (inlinePerformIO)
-import qualified Data.ByteString.Internal as S
-import qualified Data.ByteString.Lazy.Internal as L
-#endif
-
-#if defined(__GLASGOW_HASKELL__) && !defined(__HADDOCK__)
-import GHC.Base
-import GHC.Word (Word32(..),Word16(..),Word64(..))
-
-#if WORD_SIZE_IN_BITS < 64 && __GLASGOW_HASKELL__ >= 608
-import GHC.Word (uncheckedShiftRL64#)
-#endif
-#endif
-
-------------------------------------------------------------------------
-
--- | A 'Builder' is an efficient way to build lazy 'L.ByteString's.
--- There are several functions for constructing 'Builder's, but only one
--- to inspect them: to extract any data, you have to turn them into lazy
--- 'L.ByteString's using 'toLazyByteString'.
---
--- Internally, a 'Builder' constructs a lazy 'L.Bytestring' by filling byte
--- arrays piece by piece.  As each buffer is filled, it is \'popped\'
--- off, to become a new chunk of the resulting lazy 'L.ByteString'.
--- All this is hidden from the user of the 'Builder'.
-
-newtype Builder = Builder {
-        -- Invariant (from Data.ByteString.Lazy):
-        --      The lists include no null ByteStrings.
-        runBuilder :: (Buffer -> [S.ByteString]) -> Buffer -> [S.ByteString]
-    }
-
-instance Monoid Builder where
-    mempty  = empty
-    {-# INLINE mempty #-}
-    mappend = append
-    {-# INLINE mappend #-}
-
-------------------------------------------------------------------------
-
--- | /O(1)./ The empty Builder, satisfying
---
---  * @'toLazyByteString' 'empty' = 'L.empty'@
---
-empty :: Builder
-empty = Builder id
-{-# INLINE empty #-}
-
--- | /O(1)./ A Builder taking a single byte, satisfying
---
---  * @'toLazyByteString' ('singleton' b) = 'L.singleton' b@
---
-singleton :: Word8 -> Builder
-singleton = writeN 1 . flip poke
-{-# INLINE singleton #-}
-
-------------------------------------------------------------------------
-
--- | /O(1)./ The concatenation of two Builders, an associative operation
--- with identity 'empty', satisfying
---
---  * @'toLazyByteString' ('append' x y) = 'L.append' ('toLazyByteString' x) ('toLazyByteString' y)@
---
-append :: Builder -> Builder -> Builder
-append (Builder f) (Builder g) = Builder (f . g)
-{-# INLINE append #-}
-
--- | /O(1)./ A Builder taking a 'S.ByteString', satisfying
---
---  * @'toLazyByteString' ('fromByteString' bs) = 'L.fromChunks' [bs]@
---
-fromByteString :: S.ByteString -> Builder
-fromByteString bs
-  | S.null bs = empty
-  | otherwise = flush `append` mapBuilder (bs :)
-{-# INLINE fromByteString #-}
-
--- | Write a 'S.ByteString' to the builder.
---
-copyByteString :: S.ByteString  -- ^ ByteString to copy
-                -> Builder       -- ^ Resulting write.
-copyByteString byteString = fromUnsafeWrite l f 
-  where
-    (fptr, o, l) = S.toForeignPtr byteString
-    f dst = do copyBytes dst (unsafeForeignPtrToPtr fptr `plusPtr` o) l
-               touchForeignPtr fptr
-    {-# INLINE f #-}
-{-# INLINE copyByteString #-}
-
-
--- | /O(1)./ A Builder taking a lazy 'L.ByteString', satisfying
---
---  * @'toLazyByteString' ('fromLazyByteString' bs) = bs@
---
-fromLazyByteString :: L.ByteString -> Builder
-fromLazyByteString bss = flush `append` mapBuilder (L.toChunks bss ++)
-{-# INLINE fromLazyByteString #-}
-
--- | /O(n)./ A Builder from a raw write to a pointer.
-fromUnsafeWrite :: Int                  -- ^ Number of bytes to be written.
-                -> (Ptr Word8 -> IO ()) -- ^ Function that does the write.
-                -> Builder              -- ^ Resulting 'Builder'.
-fromUnsafeWrite = writeN
-{-# INLINE fromUnsafeWrite #-}
-
-------------------------------------------------------------------------
-
--- Our internal buffer type
-data Buffer = Buffer {-# UNPACK #-} !(ForeignPtr Word8)
-                     {-# UNPACK #-} !Int                -- offset
-                     {-# UNPACK #-} !Int                -- used bytes
-                     {-# UNPACK #-} !Int                -- length left
-
-------------------------------------------------------------------------
-
--- | /O(n)./ Extract a lazy 'L.ByteString' from a 'Builder'.
--- The construction work takes place if and when the relevant part of
--- the lazy 'L.ByteString' is demanded.
---
-toLazyByteString :: Builder -> L.ByteString
-toLazyByteString m = L.fromChunks $ unsafePerformIO $ do
-    buf <- newBuffer defaultSize
-    return (runBuilder (m `append` flush) (const []) buf)
-
--- | /O(1)./ Pop the 'S.ByteString' we have constructed so far, if any,
--- yielding a new chunk in the result lazy 'L.ByteString'.
-flush :: Builder
-flush = Builder $ \ k buf@(Buffer p o u l) ->
-    if u == 0
-      then k buf
-      else S.PS p o u : k (Buffer p (o+u) 0 l)
-
-------------------------------------------------------------------------
-
---
--- copied from Data.ByteString.Lazy
---
-defaultSize :: Int
-defaultSize = 32 * k - overhead
-    where k = 1024
-          overhead = 2 * sizeOf (undefined :: Int)
-
-------------------------------------------------------------------------
-
--- | Sequence an IO operation on the buffer
-unsafeLiftIO :: (Buffer -> IO Buffer) -> Builder
-unsafeLiftIO f =  Builder $ \ k buf -> inlinePerformIO $ do
-    buf' <- f buf
-    return (k buf')
-{-# INLINE unsafeLiftIO #-}
-
--- | Get the size of the buffer
-withSize :: (Int -> Builder) -> Builder
-withSize f = Builder $ \ k buf@(Buffer _ _ _ l) ->
-    runBuilder (f l) k buf
-
--- | Map the resulting list of bytestrings.
-mapBuilder :: ([S.ByteString] -> [S.ByteString]) -> Builder
-mapBuilder f = Builder (f .)
-
-------------------------------------------------------------------------
-
--- | Ensure that there are at least @n@ many bytes available.
-ensureFree :: Int -> Builder
-ensureFree n = n `seq` withSize $ \ l ->
-    if n <= l then empty else
-        flush `append` unsafeLiftIO (const (newBuffer (max n defaultSize)))
-{-# INLINE ensureFree #-}
-
--- | Ensure that @n@ many bytes are available, and then use @f@ to write some
--- bytes into the memory.
-writeN :: Int -> (Ptr Word8 -> IO ()) -> Builder
-writeN n f = ensureFree n `append` unsafeLiftIO (writeNBuffer n f)
-{-# INLINE writeN #-}
-
-writeNBuffer :: Int -> (Ptr Word8 -> IO ()) -> Buffer -> IO Buffer
-writeNBuffer n f (Buffer fp o u l) = do
-    withForeignPtr fp (\p -> f (p `plusPtr` (o+u)))
-    return (Buffer fp o (u+n) (l-n))
-{-# INLINE writeNBuffer #-}
-
-newBuffer :: Int -> IO Buffer
-newBuffer size = do
-    fp <- S.mallocByteString size
-    return $! Buffer fp 0 0 size
-{-# INLINE newBuffer #-}
-
--- SM: A function that allows for handing over control flow to the given
--- function. 
---
---   The arguments are: length available, ptr to first byte.
---   The results are  : the number of written bytes and a builder to be
---                      executed for appending the remaining data.
---
--- NOTE: The returned builder must not reference the given Ptr Word8 anymore.
---
--- NOTE: There may be nicer constructions for achieving the same effect. This
--- is just a first hack and I'm not 100% sure that it will always work
--- correctly. That still needs to be verified.
-fillBuffer :: (Int -> Ptr Word8 -> IO (Int, Maybe Builder)) -> Builder
-fillBuffer f = Builder $ \ k buf@(Buffer fp o u l) -> inlinePerformIO $ do
-    (n, next) <- withForeignPtr fp (\p -> f l (p `plusPtr` (o+u)))
-    let buf' = Buffer fp o (u+n) (l-n)
-    case next of
-      Nothing -> return (k buf')
-      Just b  -> return (runBuilder b k buf')
-{-# INLINE fillBuffer #-}
-
--- | SM: Forces the construction of a new buffer. Currently used in implementations
--- making use of fillBuffer to ensure that a new buffer gets created if no more
--- bytes were free.
-forceNewBuffer :: Builder
-forceNewBuffer = flush `append` unsafeLiftIO (const (newBuffer defaultSize))
-{-# INLINE forceNewBuffer #-}
-
-------------------------------------------------------------------------
--- Aligned, host order writes of storable values
-
--- | Ensure that @n@ many bytes are available, and then use @f@ to write some
--- storable values into the memory.
-writeNbytes :: Storable a => Int -> (Ptr a -> IO ()) -> Builder
-writeNbytes n f = ensureFree n `append` unsafeLiftIO (writeNBufferBytes n f)
-{-# INLINE writeNbytes #-}
-
-writeNBufferBytes :: Storable a => Int -> (Ptr a -> IO ()) -> Buffer -> IO Buffer
-writeNBufferBytes n f (Buffer fp o u l) = do
-    withForeignPtr fp (\p -> f (p `plusPtr` (o+u)))
-    return (Buffer fp o (u+n) (l-n))
-{-# INLINE writeNBufferBytes #-}
-
-------------------------------------------------------------------------
-
---
--- We rely on the fromIntegral to do the right masking for us.
--- The inlining here is critical, and can be worth 4x performance
---
-
--- | Write a Word16 in big endian format
-putWord16be :: Word16 -> Builder
-putWord16be w = writeN 2 $ \p -> do
-    poke p               (fromIntegral (shiftr_w16 w 8) :: Word8)
-    poke (p `plusPtr` 1) (fromIntegral (w)              :: Word8)
-{-# INLINE putWord16be #-}
-
--- | Write a Word16 in little endian format
-putWord16le :: Word16 -> Builder
-putWord16le w = writeN 2 $ \p -> do
-    poke p               (fromIntegral (w)              :: Word8)
-    poke (p `plusPtr` 1) (fromIntegral (shiftr_w16 w 8) :: Word8)
-{-# INLINE putWord16le #-}
-
--- putWord16le w16 = writeN 2 (\p -> poke (castPtr p) w16)
-
--- | Write a Word32 in big endian format
-putWord32be :: Word32 -> Builder
-putWord32be w = writeN 4 $ \p -> do
-    poke p               (fromIntegral (shiftr_w32 w 24) :: Word8)
-    poke (p `plusPtr` 1) (fromIntegral (shiftr_w32 w 16) :: Word8)
-    poke (p `plusPtr` 2) (fromIntegral (shiftr_w32 w  8) :: Word8)
-    poke (p `plusPtr` 3) (fromIntegral (w)               :: Word8)
-{-# INLINE putWord32be #-}
-
---
--- a data type to tag Put/Check. writes construct these which are then
--- inlined and flattened. matching Checks will be more robust with rules.
---
-
--- | Write a Word32 in little endian format
-putWord32le :: Word32 -> Builder
-putWord32le w = writeN 4 $ \p -> do
-    poke p               (fromIntegral (w)               :: Word8)
-    poke (p `plusPtr` 1) (fromIntegral (shiftr_w32 w  8) :: Word8)
-    poke (p `plusPtr` 2) (fromIntegral (shiftr_w32 w 16) :: Word8)
-    poke (p `plusPtr` 3) (fromIntegral (shiftr_w32 w 24) :: Word8)
-{-# INLINE putWord32le #-}
-
--- on a little endian machine:
--- putWord32le w32 = writeN 4 (\p -> poke (castPtr p) w32)
-
--- | Write a Word64 in big endian format
-putWord64be :: Word64 -> Builder
-#if WORD_SIZE_IN_BITS < 64
---
--- To avoid expensive 64 bit shifts on 32 bit machines, we cast to
--- Word32, and write that
---
-putWord64be w =
-    let a = fromIntegral (shiftr_w64 w 32) :: Word32
-        b = fromIntegral w                 :: Word32
-    in writeN 8 $ \p -> do
-    poke p               (fromIntegral (shiftr_w32 a 24) :: Word8)
-    poke (p `plusPtr` 1) (fromIntegral (shiftr_w32 a 16) :: Word8)
-    poke (p `plusPtr` 2) (fromIntegral (shiftr_w32 a  8) :: Word8)
-    poke (p `plusPtr` 3) (fromIntegral (a)               :: Word8)
-    poke (p `plusPtr` 4) (fromIntegral (shiftr_w32 b 24) :: Word8)
-    poke (p `plusPtr` 5) (fromIntegral (shiftr_w32 b 16) :: Word8)
-    poke (p `plusPtr` 6) (fromIntegral (shiftr_w32 b  8) :: Word8)
-    poke (p `plusPtr` 7) (fromIntegral (b)               :: Word8)
-#else
-putWord64be w = writeN 8 $ \p -> do
-    poke p               (fromIntegral (shiftr_w64 w 56) :: Word8)
-    poke (p `plusPtr` 1) (fromIntegral (shiftr_w64 w 48) :: Word8)
-    poke (p `plusPtr` 2) (fromIntegral (shiftr_w64 w 40) :: Word8)
-    poke (p `plusPtr` 3) (fromIntegral (shiftr_w64 w 32) :: Word8)
-    poke (p `plusPtr` 4) (fromIntegral (shiftr_w64 w 24) :: Word8)
-    poke (p `plusPtr` 5) (fromIntegral (shiftr_w64 w 16) :: Word8)
-    poke (p `plusPtr` 6) (fromIntegral (shiftr_w64 w  8) :: Word8)
-    poke (p `plusPtr` 7) (fromIntegral (w)               :: Word8)
-#endif
-{-# INLINE putWord64be #-}
-
--- | Write a Word64 in little endian format
-putWord64le :: Word64 -> Builder
-
-#if WORD_SIZE_IN_BITS < 64
-putWord64le w =
-    let b = fromIntegral (shiftr_w64 w 32) :: Word32
-        a = fromIntegral w                 :: Word32
-    in writeN 8 $ \p -> do
-    poke (p)             (fromIntegral (a)               :: Word8)
-    poke (p `plusPtr` 1) (fromIntegral (shiftr_w32 a  8) :: Word8)
-    poke (p `plusPtr` 2) (fromIntegral (shiftr_w32 a 16) :: Word8)
-    poke (p `plusPtr` 3) (fromIntegral (shiftr_w32 a 24) :: Word8)
-    poke (p `plusPtr` 4) (fromIntegral (b)               :: Word8)
-    poke (p `plusPtr` 5) (fromIntegral (shiftr_w32 b  8) :: Word8)
-    poke (p `plusPtr` 6) (fromIntegral (shiftr_w32 b 16) :: Word8)
-    poke (p `plusPtr` 7) (fromIntegral (shiftr_w32 b 24) :: Word8)
-#else
-putWord64le w = writeN 8 $ \p -> do
-    poke p               (fromIntegral (w)               :: Word8)
-    poke (p `plusPtr` 1) (fromIntegral (shiftr_w64 w  8) :: Word8)
-    poke (p `plusPtr` 2) (fromIntegral (shiftr_w64 w 16) :: Word8)
-    poke (p `plusPtr` 3) (fromIntegral (shiftr_w64 w 24) :: Word8)
-    poke (p `plusPtr` 4) (fromIntegral (shiftr_w64 w 32) :: Word8)
-    poke (p `plusPtr` 5) (fromIntegral (shiftr_w64 w 40) :: Word8)
-    poke (p `plusPtr` 6) (fromIntegral (shiftr_w64 w 48) :: Word8)
-    poke (p `plusPtr` 7) (fromIntegral (shiftr_w64 w 56) :: Word8)
-#endif
-{-# INLINE putWord64le #-}
-
--- on a little endian machine:
--- putWord64le w64 = writeN 8 (\p -> poke (castPtr p) w64)
-
-------------------------------------------------------------------------
--- Unaligned, word size ops
-
--- | /O(1)./ A Builder taking a single native machine word. The word is
--- written in host order, host endian form, for the machine you're on.
--- On a 64 bit machine the Word is an 8 byte value, on a 32 bit machine,
--- 4 bytes. Values written this way are not portable to
--- different endian or word sized machines, without conversion.
---
-putWordhost :: Word -> Builder
-putWordhost w = writeNbytes (sizeOf (undefined :: Word)) (\p -> poke p w)
-{-# INLINE putWordhost #-}
-
--- | Write a Word16 in native host order and host endianness.
--- 2 bytes will be written, unaligned.
-putWord16host :: Word16 -> Builder
-putWord16host w16 = writeNbytes (sizeOf (undefined :: Word16)) (\p -> poke p w16)
-{-# INLINE putWord16host #-}
-
--- | Write a Word32 in native host order and host endianness.
--- 4 bytes will be written, unaligned.
-putWord32host :: Word32 -> Builder
-putWord32host w32 = writeNbytes (sizeOf (undefined :: Word32)) (\p -> poke p w32)
-{-# INLINE putWord32host #-}
-
--- | Write a Word64 in native host order.
--- On a 32 bit machine we write two host order Word32s, in big endian form.
--- 8 bytes will be written, unaligned.
-putWord64host :: Word64 -> Builder
-putWord64host w = writeNbytes (sizeOf (undefined :: Word64)) (\p -> poke p w)
-{-# INLINE putWord64host #-}
-
-------------------------------------------------------------------------
--- Unchecked shifts
-
-{-# INLINE shiftr_w16 #-}
-shiftr_w16 :: Word16 -> Int -> Word16
-{-# INLINE shiftr_w32 #-}
-shiftr_w32 :: Word32 -> Int -> Word32
-{-# INLINE shiftr_w64 #-}
-shiftr_w64 :: Word64 -> Int -> Word64
-
-#if defined(__GLASGOW_HASKELL__) && !defined(__HADDOCK__)
-shiftr_w16 (W16# w) (I# i) = W16# (w `uncheckedShiftRL#`   i)
-shiftr_w32 (W32# w) (I# i) = W32# (w `uncheckedShiftRL#`   i)
-
-#if WORD_SIZE_IN_BITS < 64
-shiftr_w64 (W64# w) (I# i) = W64# (w `uncheckedShiftRL64#` i)
-
-#if __GLASGOW_HASKELL__ <= 606
--- Exported by GHC.Word in GHC 6.8 and higher
-foreign import ccall unsafe "stg_uncheckedShiftRL64"
-    uncheckedShiftRL64#     :: Word64# -> Int# -> Word64#
-#endif
-
-#else
-shiftr_w64 (W64# w) (I# i) = W64# (w `uncheckedShiftRL#` i)
-#endif
-
-#else
-shiftr_w16 = shiftR
-shiftr_w32 = shiftR
-shiftr_w64 = shiftR
-#endif
diff --git a/src/Text/Blaze.hs b/src/Text/Blaze.hs
deleted file mode 100644
--- a/src/Text/Blaze.hs
+++ /dev/null
@@ -1,44 +0,0 @@
-{-# LANGUAGE OverloadedStrings, GeneralizedNewtypeDeriving, Rank2Types,
-             FlexibleInstances #-}
--- | Core exposed functions.
---
-module Text.Blaze
-    (
-      -- * Important types.
-      Html
-    , Tag
-    , Attribute
-    , AttributeValue
-
-      -- * Creating attributes.
-    , dataAttribute
-
-      -- * Converting values to HTML.
-    , text
-    , preEscapedText
-    , string
-    , preEscapedString
-    , showHtml
-    , preEscapedShowHtml
-
-      -- * Inserting literal ByteString's.
-    , unsafeByteString
-
-      -- * Creating tags.
-    , textTag
-    , stringTag
-
-      -- * Converting values to attribute values.
-    , textValue
-    , preEscapedTextValue
-    , stringValue
-    , preEscapedStringValue
-
-      -- * Setting attributes
-    , (!)
-
-      -- * Rendering HTML.
-    , renderHtml
-    ) where
-
-import Text.Blaze.Internal
diff --git a/src/Text/Blaze/Html4/Strict.hs b/src/Text/Blaze/Html4/Strict.hs
deleted file mode 100644
--- a/src/Text/Blaze/Html4/Strict.hs
+++ /dev/null
@@ -1,1255 +0,0 @@
-{-# LANGUAGE OverloadedStrings #-}
--- | This module exports HTML combinators used to create documents.
---
-module Text.Blaze.Html4.Strict
-    ( module Text.Blaze
-    , html
-    , docType
-    , a
-    , abbr
-    , acronym
-    , address
-    , area
-    , b
-    , bdo
-    , big
-    , blockquote
-    , body
-    , br
-    , button
-    , caption
-    , cite
-    , code
-    , col
-    , colgroup
-    , dd
-    , del
-    , dfn
-    , div
-    , dl
-    , dt
-    , em
-    , fieldset
-    , form
-    , h1
-    , h2
-    , h3
-    , h4
-    , h5
-    , h6
-    , head
-    , hr
-    , htmlNoDocType
-    , i
-    , img
-    , input
-    , ins
-    , kbd
-    , label
-    , legend
-    , li
-    , link
-    , map
-    , meta
-    , noscript
-    , object
-    , ol
-    , optgroup
-    , option
-    , p
-    , param
-    , pre
-    , q
-    , samp
-    , script
-    , select
-    , small
-    , span
-    , strong
-    , style
-    , sub
-    , sup
-    , table
-    , tbody
-    , td
-    , textarea
-    , tfoot
-    , th
-    , thead
-    , title
-    , tr
-    , tt
-    , ul
-    , var
-    ) where
-
-import Prelude ()
-import Data.Monoid (mappend)
-
-import Text.Blaze
-import Text.Blaze.Internal (parent, leaf, open)
-
--- | Combinator for the @\<html>@ element. This combinator will also
--- insert the correct doctype.
---
--- Example:
---
--- > html $ span $ text "foo"
---
--- Result:
---
--- > <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
--- >     "http://www.w3.org/TR/html4/strict.dtd">
--- > <html><span>foo</span></html>
---
-html :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-html inner = docType `mappend` htmlNoDocType inner
-{-# INLINE html #-}
-
--- | Combinator for the document type. This should be placed at the top
--- of every HTML page.
---
--- Example:
---
--- > docType
---
--- Result:
---
--- > <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
--- >     "http://www.w3.org/TR/html4/strict.dtd">
---
-docType :: Html a  -- ^ The document type HTML.
-docType = preEscapedText "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\"\n    \"http://www.w3.org/TR/html4/strict.dtd\">\n"
-{-# INLINE docType #-}
-
--- | Combinator for the @\<a>@ element.
---
--- Example:
---
--- > a $ span $ text "foo"
---
--- Result:
---
--- > <a><span>foo</span></a>
---
-a :: Html a  -- ^ Inner HTML.
-  -> Html b  -- ^ Resulting HTML.
-a = parent "<a" "</a>"
-{-# INLINE a #-}
-
--- | Combinator for the @\<abbr>@ element.
---
--- Example:
---
--- > abbr $ span $ text "foo"
---
--- Result:
---
--- > <abbr><span>foo</span></abbr>
---
-abbr :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-abbr = parent "<abbr" "</abbr>"
-{-# INLINE abbr #-}
-
--- | Combinator for the @\<acronym>@ element.
---
--- Example:
---
--- > acronym $ span $ text "foo"
---
--- Result:
---
--- > <acronym><span>foo</span></acronym>
---
-acronym :: Html a  -- ^ Inner HTML.
-        -> Html b  -- ^ Resulting HTML.
-acronym = parent "<acronym" "</acronym>"
-{-# INLINE acronym #-}
-
--- | Combinator for the @\<address>@ element.
---
--- Example:
---
--- > address $ span $ text "foo"
---
--- Result:
---
--- > <address><span>foo</span></address>
---
-address :: Html a  -- ^ Inner HTML.
-        -> Html b  -- ^ Resulting HTML.
-address = parent "<address" "</address>"
-{-# INLINE address #-}
-
--- | Combinator for the @\<area>@ element.
---
--- Example:
---
--- > area
---
--- Result:
---
--- > <area>
---
-area :: Html a  -- ^ Resulting HTML.
-area = open "<area"
-{-# INLINE area #-}
-
--- | Combinator for the @\<b>@ element.
---
--- Example:
---
--- > b $ span $ text "foo"
---
--- Result:
---
--- > <b><span>foo</span></b>
---
-b :: Html a  -- ^ Inner HTML.
-  -> Html b  -- ^ Resulting HTML.
-b = parent "<b" "</b>"
-{-# INLINE b #-}
-
--- | Combinator for the @\<bdo>@ element.
---
--- Example:
---
--- > bdo $ span $ text "foo"
---
--- Result:
---
--- > <bdo><span>foo</span></bdo>
---
-bdo :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-bdo = parent "<bdo" "</bdo>"
-{-# INLINE bdo #-}
-
--- | Combinator for the @\<big>@ element.
---
--- Example:
---
--- > big $ span $ text "foo"
---
--- Result:
---
--- > <big><span>foo</span></big>
---
-big :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-big = parent "<big" "</big>"
-{-# INLINE big #-}
-
--- | Combinator for the @\<blockquote>@ element.
---
--- Example:
---
--- > blockquote $ span $ text "foo"
---
--- Result:
---
--- > <blockquote><span>foo</span></blockquote>
---
-blockquote :: Html a  -- ^ Inner HTML.
-           -> Html b  -- ^ Resulting HTML.
-blockquote = parent "<blockquote" "</blockquote>"
-{-# INLINE blockquote #-}
-
--- | Combinator for the @\<body>@ element.
---
--- Example:
---
--- > body $ span $ text "foo"
---
--- Result:
---
--- > <body><span>foo</span></body>
---
-body :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-body = parent "<body" "</body>"
-{-# INLINE body #-}
-
--- | Combinator for the @\<br>@ element.
---
--- Example:
---
--- > br
---
--- Result:
---
--- > <br>
---
-br :: Html a  -- ^ Resulting HTML.
-br = open "<br"
-{-# INLINE br #-}
-
--- | Combinator for the @\<button>@ element.
---
--- Example:
---
--- > button $ span $ text "foo"
---
--- Result:
---
--- > <button><span>foo</span></button>
---
-button :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-button = parent "<button" "</button>"
-{-# INLINE button #-}
-
--- | Combinator for the @\<caption>@ element.
---
--- Example:
---
--- > caption $ span $ text "foo"
---
--- Result:
---
--- > <caption><span>foo</span></caption>
---
-caption :: Html a  -- ^ Inner HTML.
-        -> Html b  -- ^ Resulting HTML.
-caption = parent "<caption" "</caption>"
-{-# INLINE caption #-}
-
--- | Combinator for the @\<cite>@ element.
---
--- Example:
---
--- > cite $ span $ text "foo"
---
--- Result:
---
--- > <cite><span>foo</span></cite>
---
-cite :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-cite = parent "<cite" "</cite>"
-{-# INLINE cite #-}
-
--- | Combinator for the @\<code>@ element.
---
--- Example:
---
--- > code $ span $ text "foo"
---
--- Result:
---
--- > <code><span>foo</span></code>
---
-code :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-code = parent "<code" "</code>"
-{-# INLINE code #-}
-
--- | Combinator for the @\<col>@ element.
---
--- Example:
---
--- > col
---
--- Result:
---
--- > <col>
---
-col :: Html a  -- ^ Resulting HTML.
-col = open "<col"
-{-# INLINE col #-}
-
--- | Combinator for the @\<colgroup>@ element.
---
--- Example:
---
--- > colgroup $ span $ text "foo"
---
--- Result:
---
--- > <colgroup><span>foo</span></colgroup>
---
-colgroup :: Html a  -- ^ Inner HTML.
-         -> Html b  -- ^ Resulting HTML.
-colgroup = parent "<colgroup" "</colgroup>"
-{-# INLINE colgroup #-}
-
--- | Combinator for the @\<dd>@ element.
---
--- Example:
---
--- > dd $ span $ text "foo"
---
--- Result:
---
--- > <dd><span>foo</span></dd>
---
-dd :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-dd = parent "<dd" "</dd>"
-{-# INLINE dd #-}
-
--- | Combinator for the @\<del>@ element.
---
--- Example:
---
--- > del $ span $ text "foo"
---
--- Result:
---
--- > <del><span>foo</span></del>
---
-del :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-del = parent "<del" "</del>"
-{-# INLINE del #-}
-
--- | Combinator for the @\<dfn>@ element.
---
--- Example:
---
--- > dfn $ span $ text "foo"
---
--- Result:
---
--- > <dfn><span>foo</span></dfn>
---
-dfn :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-dfn = parent "<dfn" "</dfn>"
-{-# INLINE dfn #-}
-
--- | Combinator for the @\<div>@ element.
---
--- Example:
---
--- > div $ span $ text "foo"
---
--- Result:
---
--- > <div><span>foo</span></div>
---
-div :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-div = parent "<div" "</div>"
-{-# INLINE div #-}
-
--- | Combinator for the @\<dl>@ element.
---
--- Example:
---
--- > dl $ span $ text "foo"
---
--- Result:
---
--- > <dl><span>foo</span></dl>
---
-dl :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-dl = parent "<dl" "</dl>"
-{-# INLINE dl #-}
-
--- | Combinator for the @\<dt>@ element.
---
--- Example:
---
--- > dt $ span $ text "foo"
---
--- Result:
---
--- > <dt><span>foo</span></dt>
---
-dt :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-dt = parent "<dt" "</dt>"
-{-# INLINE dt #-}
-
--- | Combinator for the @\<em>@ element.
---
--- Example:
---
--- > em $ span $ text "foo"
---
--- Result:
---
--- > <em><span>foo</span></em>
---
-em :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-em = parent "<em" "</em>"
-{-# INLINE em #-}
-
--- | Combinator for the @\<fieldset>@ element.
---
--- Example:
---
--- > fieldset $ span $ text "foo"
---
--- Result:
---
--- > <fieldset><span>foo</span></fieldset>
---
-fieldset :: Html a  -- ^ Inner HTML.
-         -> Html b  -- ^ Resulting HTML.
-fieldset = parent "<fieldset" "</fieldset>"
-{-# INLINE fieldset #-}
-
--- | Combinator for the @\<form>@ element.
---
--- Example:
---
--- > form $ span $ text "foo"
---
--- Result:
---
--- > <form><span>foo</span></form>
---
-form :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-form = parent "<form" "</form>"
-{-# INLINE form #-}
-
--- | Combinator for the @\<h1>@ element.
---
--- Example:
---
--- > h1 $ span $ text "foo"
---
--- Result:
---
--- > <h1><span>foo</span></h1>
---
-h1 :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-h1 = parent "<h1" "</h1>"
-{-# INLINE h1 #-}
-
--- | Combinator for the @\<h2>@ element.
---
--- Example:
---
--- > h2 $ span $ text "foo"
---
--- Result:
---
--- > <h2><span>foo</span></h2>
---
-h2 :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-h2 = parent "<h2" "</h2>"
-{-# INLINE h2 #-}
-
--- | Combinator for the @\<h3>@ element.
---
--- Example:
---
--- > h3 $ span $ text "foo"
---
--- Result:
---
--- > <h3><span>foo</span></h3>
---
-h3 :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-h3 = parent "<h3" "</h3>"
-{-# INLINE h3 #-}
-
--- | Combinator for the @\<h4>@ element.
---
--- Example:
---
--- > h4 $ span $ text "foo"
---
--- Result:
---
--- > <h4><span>foo</span></h4>
---
-h4 :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-h4 = parent "<h4" "</h4>"
-{-# INLINE h4 #-}
-
--- | Combinator for the @\<h5>@ element.
---
--- Example:
---
--- > h5 $ span $ text "foo"
---
--- Result:
---
--- > <h5><span>foo</span></h5>
---
-h5 :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-h5 = parent "<h5" "</h5>"
-{-# INLINE h5 #-}
-
--- | Combinator for the @\<h6>@ element.
---
--- Example:
---
--- > h6 $ span $ text "foo"
---
--- Result:
---
--- > <h6><span>foo</span></h6>
---
-h6 :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-h6 = parent "<h6" "</h6>"
-{-# INLINE h6 #-}
-
--- | Combinator for the @\<head>@ element.
---
--- Example:
---
--- > head $ span $ text "foo"
---
--- Result:
---
--- > <head><span>foo</span></head>
---
-head :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-head = parent "<head" "</head>"
-{-# INLINE head #-}
-
--- | Combinator for the @\<hr>@ element.
---
--- Example:
---
--- > hr
---
--- Result:
---
--- > <hr>
---
-hr :: Html a  -- ^ Resulting HTML.
-hr = open "<hr"
-{-# INLINE hr #-}
-
--- | Combinator for the @\<html>@ element.
---
--- Example:
---
--- > htmlNoDocType $ span $ text "foo"
---
--- Result:
---
--- > <html><span>foo</span></html>
---
-htmlNoDocType :: Html a  -- ^ Inner HTML.
-              -> Html b  -- ^ Resulting HTML.
-htmlNoDocType = parent "<html" "</html>"
-{-# INLINE htmlNoDocType #-}
-
--- | Combinator for the @\<i>@ element.
---
--- Example:
---
--- > i $ span $ text "foo"
---
--- Result:
---
--- > <i><span>foo</span></i>
---
-i :: Html a  -- ^ Inner HTML.
-  -> Html b  -- ^ Resulting HTML.
-i = parent "<i" "</i>"
-{-# INLINE i #-}
-
--- | Combinator for the @\<img>@ element.
---
--- Example:
---
--- > img
---
--- Result:
---
--- > <img>
---
-img :: Html a  -- ^ Resulting HTML.
-img = open "<img"
-{-# INLINE img #-}
-
--- | Combinator for the @\<input>@ element.
---
--- Example:
---
--- > input
---
--- Result:
---
--- > <input>
---
-input :: Html a  -- ^ Resulting HTML.
-input = open "<input"
-{-# INLINE input #-}
-
--- | Combinator for the @\<ins>@ element.
---
--- Example:
---
--- > ins $ span $ text "foo"
---
--- Result:
---
--- > <ins><span>foo</span></ins>
---
-ins :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-ins = parent "<ins" "</ins>"
-{-# INLINE ins #-}
-
--- | Combinator for the @\<kbd>@ element.
---
--- Example:
---
--- > kbd $ span $ text "foo"
---
--- Result:
---
--- > <kbd><span>foo</span></kbd>
---
-kbd :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-kbd = parent "<kbd" "</kbd>"
-{-# INLINE kbd #-}
-
--- | Combinator for the @\<label>@ element.
---
--- Example:
---
--- > label $ span $ text "foo"
---
--- Result:
---
--- > <label><span>foo</span></label>
---
-label :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-label = parent "<label" "</label>"
-{-# INLINE label #-}
-
--- | Combinator for the @\<legend>@ element.
---
--- Example:
---
--- > legend $ span $ text "foo"
---
--- Result:
---
--- > <legend><span>foo</span></legend>
---
-legend :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-legend = parent "<legend" "</legend>"
-{-# INLINE legend #-}
-
--- | Combinator for the @\<li>@ element.
---
--- Example:
---
--- > li $ span $ text "foo"
---
--- Result:
---
--- > <li><span>foo</span></li>
---
-li :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-li = parent "<li" "</li>"
-{-# INLINE li #-}
-
--- | Combinator for the @\<link>@ element.
---
--- Example:
---
--- > link
---
--- Result:
---
--- > <link>
---
-link :: Html a  -- ^ Resulting HTML.
-link = open "<link"
-{-# INLINE link #-}
-
--- | Combinator for the @\<map>@ element.
---
--- Example:
---
--- > map $ span $ text "foo"
---
--- Result:
---
--- > <map><span>foo</span></map>
---
-map :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-map = parent "<map" "</map>"
-{-# INLINE map #-}
-
--- | Combinator for the @\<meta>@ element.
---
--- Example:
---
--- > meta
---
--- Result:
---
--- > <meta>
---
-meta :: Html a  -- ^ Resulting HTML.
-meta = open "<meta"
-{-# INLINE meta #-}
-
--- | Combinator for the @\<noscript>@ element.
---
--- Example:
---
--- > noscript $ span $ text "foo"
---
--- Result:
---
--- > <noscript><span>foo</span></noscript>
---
-noscript :: Html a  -- ^ Inner HTML.
-         -> Html b  -- ^ Resulting HTML.
-noscript = parent "<noscript" "</noscript>"
-{-# INLINE noscript #-}
-
--- | Combinator for the @\<object>@ element.
---
--- Example:
---
--- > object $ span $ text "foo"
---
--- Result:
---
--- > <object><span>foo</span></object>
---
-object :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-object = parent "<object" "</object>"
-{-# INLINE object #-}
-
--- | Combinator for the @\<ol>@ element.
---
--- Example:
---
--- > ol $ span $ text "foo"
---
--- Result:
---
--- > <ol><span>foo</span></ol>
---
-ol :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-ol = parent "<ol" "</ol>"
-{-# INLINE ol #-}
-
--- | Combinator for the @\<optgroup>@ element.
---
--- Example:
---
--- > optgroup $ span $ text "foo"
---
--- Result:
---
--- > <optgroup><span>foo</span></optgroup>
---
-optgroup :: Html a  -- ^ Inner HTML.
-         -> Html b  -- ^ Resulting HTML.
-optgroup = parent "<optgroup" "</optgroup>"
-{-# INLINE optgroup #-}
-
--- | Combinator for the @\<option>@ element.
---
--- Example:
---
--- > option $ span $ text "foo"
---
--- Result:
---
--- > <option><span>foo</span></option>
---
-option :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-option = parent "<option" "</option>"
-{-# INLINE option #-}
-
--- | Combinator for the @\<p>@ element.
---
--- Example:
---
--- > p $ span $ text "foo"
---
--- Result:
---
--- > <p><span>foo</span></p>
---
-p :: Html a  -- ^ Inner HTML.
-  -> Html b  -- ^ Resulting HTML.
-p = parent "<p" "</p>"
-{-# INLINE p #-}
-
--- | Combinator for the @\<param>@ element.
---
--- Example:
---
--- > param
---
--- Result:
---
--- > <param>
---
-param :: Html a  -- ^ Resulting HTML.
-param = open "<param"
-{-# INLINE param #-}
-
--- | Combinator for the @\<pre>@ element.
---
--- Example:
---
--- > pre $ span $ text "foo"
---
--- Result:
---
--- > <pre><span>foo</span></pre>
---
-pre :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-pre = parent "<pre" "</pre>"
-{-# INLINE pre #-}
-
--- | Combinator for the @\<q>@ element.
---
--- Example:
---
--- > q $ span $ text "foo"
---
--- Result:
---
--- > <q><span>foo</span></q>
---
-q :: Html a  -- ^ Inner HTML.
-  -> Html b  -- ^ Resulting HTML.
-q = parent "<q" "</q>"
-{-# INLINE q #-}
-
--- | Combinator for the @\<samp>@ element.
---
--- Example:
---
--- > samp $ span $ text "foo"
---
--- Result:
---
--- > <samp><span>foo</span></samp>
---
-samp :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-samp = parent "<samp" "</samp>"
-{-# INLINE samp #-}
-
--- | Combinator for the @\<script>@ element.
---
--- Example:
---
--- > script $ span $ text "foo"
---
--- Result:
---
--- > <script><span>foo</span></script>
---
-script :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-script = parent "<script" "</script>"
-{-# INLINE script #-}
-
--- | Combinator for the @\<select>@ element.
---
--- Example:
---
--- > select $ span $ text "foo"
---
--- Result:
---
--- > <select><span>foo</span></select>
---
-select :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-select = parent "<select" "</select>"
-{-# INLINE select #-}
-
--- | Combinator for the @\<small>@ element.
---
--- Example:
---
--- > small $ span $ text "foo"
---
--- Result:
---
--- > <small><span>foo</span></small>
---
-small :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-small = parent "<small" "</small>"
-{-# INLINE small #-}
-
--- | Combinator for the @\<span>@ element.
---
--- Example:
---
--- > span $ span $ text "foo"
---
--- Result:
---
--- > <span><span>foo</span></span>
---
-span :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-span = parent "<span" "</span>"
-{-# INLINE span #-}
-
--- | Combinator for the @\<strong>@ element.
---
--- Example:
---
--- > strong $ span $ text "foo"
---
--- Result:
---
--- > <strong><span>foo</span></strong>
---
-strong :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-strong = parent "<strong" "</strong>"
-{-# INLINE strong #-}
-
--- | Combinator for the @\<style>@ element.
---
--- Example:
---
--- > style $ span $ text "foo"
---
--- Result:
---
--- > <style><span>foo</span></style>
---
-style :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-style = parent "<style" "</style>"
-{-# INLINE style #-}
-
--- | Combinator for the @\<sub>@ element.
---
--- Example:
---
--- > sub $ span $ text "foo"
---
--- Result:
---
--- > <sub><span>foo</span></sub>
---
-sub :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-sub = parent "<sub" "</sub>"
-{-# INLINE sub #-}
-
--- | Combinator for the @\<sup>@ element.
---
--- Example:
---
--- > sup $ span $ text "foo"
---
--- Result:
---
--- > <sup><span>foo</span></sup>
---
-sup :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-sup = parent "<sup" "</sup>"
-{-# INLINE sup #-}
-
--- | Combinator for the @\<table>@ element.
---
--- Example:
---
--- > table $ span $ text "foo"
---
--- Result:
---
--- > <table><span>foo</span></table>
---
-table :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-table = parent "<table" "</table>"
-{-# INLINE table #-}
-
--- | Combinator for the @\<tbody>@ element.
---
--- Example:
---
--- > tbody $ span $ text "foo"
---
--- Result:
---
--- > <tbody><span>foo</span></tbody>
---
-tbody :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-tbody = parent "<tbody" "</tbody>"
-{-# INLINE tbody #-}
-
--- | Combinator for the @\<td>@ element.
---
--- Example:
---
--- > td $ span $ text "foo"
---
--- Result:
---
--- > <td><span>foo</span></td>
---
-td :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-td = parent "<td" "</td>"
-{-# INLINE td #-}
-
--- | Combinator for the @\<textarea>@ element.
---
--- Example:
---
--- > textarea $ span $ text "foo"
---
--- Result:
---
--- > <textarea><span>foo</span></textarea>
---
-textarea :: Html a  -- ^ Inner HTML.
-         -> Html b  -- ^ Resulting HTML.
-textarea = parent "<textarea" "</textarea>"
-{-# INLINE textarea #-}
-
--- | Combinator for the @\<tfoot>@ element.
---
--- Example:
---
--- > tfoot $ span $ text "foo"
---
--- Result:
---
--- > <tfoot><span>foo</span></tfoot>
---
-tfoot :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-tfoot = parent "<tfoot" "</tfoot>"
-{-# INLINE tfoot #-}
-
--- | Combinator for the @\<th>@ element.
---
--- Example:
---
--- > th $ span $ text "foo"
---
--- Result:
---
--- > <th><span>foo</span></th>
---
-th :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-th = parent "<th" "</th>"
-{-# INLINE th #-}
-
--- | Combinator for the @\<thead>@ element.
---
--- Example:
---
--- > thead $ span $ text "foo"
---
--- Result:
---
--- > <thead><span>foo</span></thead>
---
-thead :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-thead = parent "<thead" "</thead>"
-{-# INLINE thead #-}
-
--- | Combinator for the @\<title>@ element.
---
--- Example:
---
--- > title $ span $ text "foo"
---
--- Result:
---
--- > <title><span>foo</span></title>
---
-title :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-title = parent "<title" "</title>"
-{-# INLINE title #-}
-
--- | Combinator for the @\<tr>@ element.
---
--- Example:
---
--- > tr $ span $ text "foo"
---
--- Result:
---
--- > <tr><span>foo</span></tr>
---
-tr :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-tr = parent "<tr" "</tr>"
-{-# INLINE tr #-}
-
--- | Combinator for the @\<tt>@ element.
---
--- Example:
---
--- > tt $ span $ text "foo"
---
--- Result:
---
--- > <tt><span>foo</span></tt>
---
-tt :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-tt = parent "<tt" "</tt>"
-{-# INLINE tt #-}
-
--- | Combinator for the @\<ul>@ element.
---
--- Example:
---
--- > ul $ span $ text "foo"
---
--- Result:
---
--- > <ul><span>foo</span></ul>
---
-ul :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-ul = parent "<ul" "</ul>"
-{-# INLINE ul #-}
-
--- | Combinator for the @\<var>@ element.
---
--- Example:
---
--- > var $ span $ text "foo"
---
--- Result:
---
--- > <var><span>foo</span></var>
---
-var :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-var = parent "<var" "</var>"
-{-# INLINE var #-}
diff --git a/src/Text/Blaze/Html4/Strict/Attributes.hs b/src/Text/Blaze/Html4/Strict/Attributes.hs
deleted file mode 100644
--- a/src/Text/Blaze/Html4/Strict/Attributes.hs
+++ /dev/null
@@ -1,1468 +0,0 @@
-{-# LANGUAGE OverloadedStrings #-}
--- | This module exports combinators that provide you with the
--- ability to set attributes on HTML elements.
---
-module Text.Blaze.Html4.Strict.Attributes
-    ( abbr
-    , accept
-    , accesskey
-    , action
-    , align
-    , alt
-    , archive
-    , axis
-    , border
-    , cellpadding
-    , cellspacing
-    , char
-    , charoff
-    , charset
-    , checked
-    , cite
-    , class_
-    , classid
-    , codebase
-    , codetype
-    , cols
-    , colspan
-    , content
-    , coords
-    , data_
-    , datetime
-    , declare
-    , defer
-    , dir
-    , disabled
-    , enctype
-    , for
-    , frame
-    , headers
-    , height
-    , href
-    , hreflang
-    , http_equiv
-    , id
-    , label
-    , lang
-    , maxlength
-    , media
-    , method
-    , multiple
-    , name
-    , nohref
-    , onabort
-    , onblur
-    , onchange
-    , onclick
-    , ondblclick
-    , onfocus
-    , onkeydown
-    , onkeypress
-    , onkeyup
-    , onload
-    , onmousedown
-    , onmousemove
-    , onmouseout
-    , onmouseover
-    , onmouseup
-    , onreset
-    , onselect
-    , onsubmit
-    , onunload
-    , profile
-    , readonly
-    , rel
-    , rev
-    , rows
-    , rowspan
-    , rules
-    , scheme
-    , scope
-    , selected
-    , shape
-    , size
-    , span
-    , src
-    , standby
-    , style
-    , summary
-    , tabindex
-    , title
-    , type_
-    , usemap
-    , valign
-    , value
-    , valuetype
-    , width
-    ) where
-
-import Prelude ()
-
-import Data.Text (Text)
-
-import Text.Blaze.Internal (Attribute, AttributeValue, attribute)
-
--- | Combinator for the @abbr@ attribute.
---
--- Example:
---
--- > div ! abbr "bar" $ "Hello."
---
--- Result:
---
--- > <div abbr="bar">Hello.</div>
---
-abbr :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-abbr = attribute " abbr=\""
-{-# INLINE abbr #-}
-
--- | Combinator for the @accept@ attribute.
---
--- Example:
---
--- > div ! accept "bar" $ "Hello."
---
--- Result:
---
--- > <div accept="bar">Hello.</div>
---
-accept :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-accept = attribute " accept=\""
-{-# INLINE accept #-}
-
--- | Combinator for the @accesskey@ attribute.
---
--- Example:
---
--- > div ! accesskey "bar" $ "Hello."
---
--- Result:
---
--- > <div accesskey="bar">Hello.</div>
---
-accesskey :: AttributeValue  -- ^ Attribute value.
-          -> Attribute       -- ^ Resulting attribute.
-accesskey = attribute " accesskey=\""
-{-# INLINE accesskey #-}
-
--- | Combinator for the @action@ attribute.
---
--- Example:
---
--- > div ! action "bar" $ "Hello."
---
--- Result:
---
--- > <div action="bar">Hello.</div>
---
-action :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-action = attribute " action=\""
-{-# INLINE action #-}
-
--- | Combinator for the @align@ attribute.
---
--- Example:
---
--- > div ! align "bar" $ "Hello."
---
--- Result:
---
--- > <div align="bar">Hello.</div>
---
-align :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-align = attribute " align=\""
-{-# INLINE align #-}
-
--- | Combinator for the @alt@ attribute.
---
--- Example:
---
--- > div ! alt "bar" $ "Hello."
---
--- Result:
---
--- > <div alt="bar">Hello.</div>
---
-alt :: AttributeValue  -- ^ Attribute value.
-    -> Attribute       -- ^ Resulting attribute.
-alt = attribute " alt=\""
-{-# INLINE alt #-}
-
--- | Combinator for the @archive@ attribute.
---
--- Example:
---
--- > div ! archive "bar" $ "Hello."
---
--- Result:
---
--- > <div archive="bar">Hello.</div>
---
-archive :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-archive = attribute " archive=\""
-{-# INLINE archive #-}
-
--- | Combinator for the @axis@ attribute.
---
--- Example:
---
--- > div ! axis "bar" $ "Hello."
---
--- Result:
---
--- > <div axis="bar">Hello.</div>
---
-axis :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-axis = attribute " axis=\""
-{-# INLINE axis #-}
-
--- | Combinator for the @border@ attribute.
---
--- Example:
---
--- > div ! border "bar" $ "Hello."
---
--- Result:
---
--- > <div border="bar">Hello.</div>
---
-border :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-border = attribute " border=\""
-{-# INLINE border #-}
-
--- | Combinator for the @cellpadding@ attribute.
---
--- Example:
---
--- > div ! cellpadding "bar" $ "Hello."
---
--- Result:
---
--- > <div cellpadding="bar">Hello.</div>
---
-cellpadding :: AttributeValue  -- ^ Attribute value.
-            -> Attribute       -- ^ Resulting attribute.
-cellpadding = attribute " cellpadding=\""
-{-# INLINE cellpadding #-}
-
--- | Combinator for the @cellspacing@ attribute.
---
--- Example:
---
--- > div ! cellspacing "bar" $ "Hello."
---
--- Result:
---
--- > <div cellspacing="bar">Hello.</div>
---
-cellspacing :: AttributeValue  -- ^ Attribute value.
-            -> Attribute       -- ^ Resulting attribute.
-cellspacing = attribute " cellspacing=\""
-{-# INLINE cellspacing #-}
-
--- | Combinator for the @char@ attribute.
---
--- Example:
---
--- > div ! char "bar" $ "Hello."
---
--- Result:
---
--- > <div char="bar">Hello.</div>
---
-char :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-char = attribute " char=\""
-{-# INLINE char #-}
-
--- | Combinator for the @charoff@ attribute.
---
--- Example:
---
--- > div ! charoff "bar" $ "Hello."
---
--- Result:
---
--- > <div charoff="bar">Hello.</div>
---
-charoff :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-charoff = attribute " charoff=\""
-{-# INLINE charoff #-}
-
--- | Combinator for the @charset@ attribute.
---
--- Example:
---
--- > div ! charset "bar" $ "Hello."
---
--- Result:
---
--- > <div charset="bar">Hello.</div>
---
-charset :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-charset = attribute " charset=\""
-{-# INLINE charset #-}
-
--- | Combinator for the @checked@ attribute.
---
--- Example:
---
--- > div ! checked "bar" $ "Hello."
---
--- Result:
---
--- > <div checked="bar">Hello.</div>
---
-checked :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-checked = attribute " checked=\""
-{-# INLINE checked #-}
-
--- | Combinator for the @cite@ attribute.
---
--- Example:
---
--- > div ! cite "bar" $ "Hello."
---
--- Result:
---
--- > <div cite="bar">Hello.</div>
---
-cite :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-cite = attribute " cite=\""
-{-# INLINE cite #-}
-
--- | Combinator for the @class@ attribute.
---
--- Example:
---
--- > div ! class_ "bar" $ "Hello."
---
--- Result:
---
--- > <div class="bar">Hello.</div>
---
-class_ :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-class_ = attribute " class=\""
-{-# INLINE class_ #-}
-
--- | Combinator for the @classid@ attribute.
---
--- Example:
---
--- > div ! classid "bar" $ "Hello."
---
--- Result:
---
--- > <div classid="bar">Hello.</div>
---
-classid :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-classid = attribute " classid=\""
-{-# INLINE classid #-}
-
--- | Combinator for the @codebase@ attribute.
---
--- Example:
---
--- > div ! codebase "bar" $ "Hello."
---
--- Result:
---
--- > <div codebase="bar">Hello.</div>
---
-codebase :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-codebase = attribute " codebase=\""
-{-# INLINE codebase #-}
-
--- | Combinator for the @codetype@ attribute.
---
--- Example:
---
--- > div ! codetype "bar" $ "Hello."
---
--- Result:
---
--- > <div codetype="bar">Hello.</div>
---
-codetype :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-codetype = attribute " codetype=\""
-{-# INLINE codetype #-}
-
--- | Combinator for the @cols@ attribute.
---
--- Example:
---
--- > div ! cols "bar" $ "Hello."
---
--- Result:
---
--- > <div cols="bar">Hello.</div>
---
-cols :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-cols = attribute " cols=\""
-{-# INLINE cols #-}
-
--- | Combinator for the @colspan@ attribute.
---
--- Example:
---
--- > div ! colspan "bar" $ "Hello."
---
--- Result:
---
--- > <div colspan="bar">Hello.</div>
---
-colspan :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-colspan = attribute " colspan=\""
-{-# INLINE colspan #-}
-
--- | Combinator for the @content@ attribute.
---
--- Example:
---
--- > div ! content "bar" $ "Hello."
---
--- Result:
---
--- > <div content="bar">Hello.</div>
---
-content :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-content = attribute " content=\""
-{-# INLINE content #-}
-
--- | Combinator for the @coords@ attribute.
---
--- Example:
---
--- > div ! coords "bar" $ "Hello."
---
--- Result:
---
--- > <div coords="bar">Hello.</div>
---
-coords :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-coords = attribute " coords=\""
-{-# INLINE coords #-}
-
--- | Combinator for the @data@ attribute.
---
--- Example:
---
--- > div ! data_ "bar" $ "Hello."
---
--- Result:
---
--- > <div data="bar">Hello.</div>
---
-data_ :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-data_ = attribute " data=\""
-{-# INLINE data_ #-}
-
--- | Combinator for the @datetime@ attribute.
---
--- Example:
---
--- > div ! datetime "bar" $ "Hello."
---
--- Result:
---
--- > <div datetime="bar">Hello.</div>
---
-datetime :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-datetime = attribute " datetime=\""
-{-# INLINE datetime #-}
-
--- | Combinator for the @declare@ attribute.
---
--- Example:
---
--- > div ! declare "bar" $ "Hello."
---
--- Result:
---
--- > <div declare="bar">Hello.</div>
---
-declare :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-declare = attribute " declare=\""
-{-# INLINE declare #-}
-
--- | Combinator for the @defer@ attribute.
---
--- Example:
---
--- > div ! defer "bar" $ "Hello."
---
--- Result:
---
--- > <div defer="bar">Hello.</div>
---
-defer :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-defer = attribute " defer=\""
-{-# INLINE defer #-}
-
--- | Combinator for the @dir@ attribute.
---
--- Example:
---
--- > div ! dir "bar" $ "Hello."
---
--- Result:
---
--- > <div dir="bar">Hello.</div>
---
-dir :: AttributeValue  -- ^ Attribute value.
-    -> Attribute       -- ^ Resulting attribute.
-dir = attribute " dir=\""
-{-# INLINE dir #-}
-
--- | Combinator for the @disabled@ attribute.
---
--- Example:
---
--- > div ! disabled "bar" $ "Hello."
---
--- Result:
---
--- > <div disabled="bar">Hello.</div>
---
-disabled :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-disabled = attribute " disabled=\""
-{-# INLINE disabled #-}
-
--- | Combinator for the @enctype@ attribute.
---
--- Example:
---
--- > div ! enctype "bar" $ "Hello."
---
--- Result:
---
--- > <div enctype="bar">Hello.</div>
---
-enctype :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-enctype = attribute " enctype=\""
-{-# INLINE enctype #-}
-
--- | Combinator for the @for@ attribute.
---
--- Example:
---
--- > div ! for "bar" $ "Hello."
---
--- Result:
---
--- > <div for="bar">Hello.</div>
---
-for :: AttributeValue  -- ^ Attribute value.
-    -> Attribute       -- ^ Resulting attribute.
-for = attribute " for=\""
-{-# INLINE for #-}
-
--- | Combinator for the @frame@ attribute.
---
--- Example:
---
--- > div ! frame "bar" $ "Hello."
---
--- Result:
---
--- > <div frame="bar">Hello.</div>
---
-frame :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-frame = attribute " frame=\""
-{-# INLINE frame #-}
-
--- | Combinator for the @headers@ attribute.
---
--- Example:
---
--- > div ! headers "bar" $ "Hello."
---
--- Result:
---
--- > <div headers="bar">Hello.</div>
---
-headers :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-headers = attribute " headers=\""
-{-# INLINE headers #-}
-
--- | Combinator for the @height@ attribute.
---
--- Example:
---
--- > div ! height "bar" $ "Hello."
---
--- Result:
---
--- > <div height="bar">Hello.</div>
---
-height :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-height = attribute " height=\""
-{-# INLINE height #-}
-
--- | Combinator for the @href@ attribute.
---
--- Example:
---
--- > div ! href "bar" $ "Hello."
---
--- Result:
---
--- > <div href="bar">Hello.</div>
---
-href :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-href = attribute " href=\""
-{-# INLINE href #-}
-
--- | Combinator for the @hreflang@ attribute.
---
--- Example:
---
--- > div ! hreflang "bar" $ "Hello."
---
--- Result:
---
--- > <div hreflang="bar">Hello.</div>
---
-hreflang :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-hreflang = attribute " hreflang=\""
-{-# INLINE hreflang #-}
-
--- | Combinator for the @http-equiv@ attribute.
---
--- Example:
---
--- > div ! http_equiv "bar" $ "Hello."
---
--- Result:
---
--- > <div http-equiv="bar">Hello.</div>
---
-http_equiv :: AttributeValue  -- ^ Attribute value.
-           -> Attribute       -- ^ Resulting attribute.
-http_equiv = attribute " http-equiv=\""
-{-# INLINE http_equiv #-}
-
--- | Combinator for the @id@ attribute.
---
--- Example:
---
--- > div ! id "bar" $ "Hello."
---
--- Result:
---
--- > <div id="bar">Hello.</div>
---
-id :: AttributeValue  -- ^ Attribute value.
-   -> Attribute       -- ^ Resulting attribute.
-id = attribute " id=\""
-{-# INLINE id #-}
-
--- | Combinator for the @label@ attribute.
---
--- Example:
---
--- > div ! label "bar" $ "Hello."
---
--- Result:
---
--- > <div label="bar">Hello.</div>
---
-label :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-label = attribute " label=\""
-{-# INLINE label #-}
-
--- | Combinator for the @lang@ attribute.
---
--- Example:
---
--- > div ! lang "bar" $ "Hello."
---
--- Result:
---
--- > <div lang="bar">Hello.</div>
---
-lang :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-lang = attribute " lang=\""
-{-# INLINE lang #-}
-
--- | Combinator for the @maxlength@ attribute.
---
--- Example:
---
--- > div ! maxlength "bar" $ "Hello."
---
--- Result:
---
--- > <div maxlength="bar">Hello.</div>
---
-maxlength :: AttributeValue  -- ^ Attribute value.
-          -> Attribute       -- ^ Resulting attribute.
-maxlength = attribute " maxlength=\""
-{-# INLINE maxlength #-}
-
--- | Combinator for the @media@ attribute.
---
--- Example:
---
--- > div ! media "bar" $ "Hello."
---
--- Result:
---
--- > <div media="bar">Hello.</div>
---
-media :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-media = attribute " media=\""
-{-# INLINE media #-}
-
--- | Combinator for the @method@ attribute.
---
--- Example:
---
--- > div ! method "bar" $ "Hello."
---
--- Result:
---
--- > <div method="bar">Hello.</div>
---
-method :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-method = attribute " method=\""
-{-# INLINE method #-}
-
--- | Combinator for the @multiple@ attribute.
---
--- Example:
---
--- > div ! multiple "bar" $ "Hello."
---
--- Result:
---
--- > <div multiple="bar">Hello.</div>
---
-multiple :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-multiple = attribute " multiple=\""
-{-# INLINE multiple #-}
-
--- | Combinator for the @name@ attribute.
---
--- Example:
---
--- > div ! name "bar" $ "Hello."
---
--- Result:
---
--- > <div name="bar">Hello.</div>
---
-name :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-name = attribute " name=\""
-{-# INLINE name #-}
-
--- | Combinator for the @nohref@ attribute.
---
--- Example:
---
--- > div ! nohref "bar" $ "Hello."
---
--- Result:
---
--- > <div nohref="bar">Hello.</div>
---
-nohref :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-nohref = attribute " nohref=\""
-{-# INLINE nohref #-}
-
--- | Combinator for the @onabort@ attribute.
---
--- Example:
---
--- > div ! onabort "bar" $ "Hello."
---
--- Result:
---
--- > <div onabort="bar">Hello.</div>
---
-onabort :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-onabort = attribute " onabort=\""
-{-# INLINE onabort #-}
-
--- | Combinator for the @onblur@ attribute.
---
--- Example:
---
--- > div ! onblur "bar" $ "Hello."
---
--- Result:
---
--- > <div onblur="bar">Hello.</div>
---
-onblur :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-onblur = attribute " onblur=\""
-{-# INLINE onblur #-}
-
--- | Combinator for the @onchange@ attribute.
---
--- Example:
---
--- > div ! onchange "bar" $ "Hello."
---
--- Result:
---
--- > <div onchange="bar">Hello.</div>
---
-onchange :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-onchange = attribute " onchange=\""
-{-# INLINE onchange #-}
-
--- | Combinator for the @onclick@ attribute.
---
--- Example:
---
--- > div ! onclick "bar" $ "Hello."
---
--- Result:
---
--- > <div onclick="bar">Hello.</div>
---
-onclick :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-onclick = attribute " onclick=\""
-{-# INLINE onclick #-}
-
--- | Combinator for the @ondblclick@ attribute.
---
--- Example:
---
--- > div ! ondblclick "bar" $ "Hello."
---
--- Result:
---
--- > <div ondblclick="bar">Hello.</div>
---
-ondblclick :: AttributeValue  -- ^ Attribute value.
-           -> Attribute       -- ^ Resulting attribute.
-ondblclick = attribute " ondblclick=\""
-{-# INLINE ondblclick #-}
-
--- | Combinator for the @onfocus@ attribute.
---
--- Example:
---
--- > div ! onfocus "bar" $ "Hello."
---
--- Result:
---
--- > <div onfocus="bar">Hello.</div>
---
-onfocus :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-onfocus = attribute " onfocus=\""
-{-# INLINE onfocus #-}
-
--- | Combinator for the @onkeydown@ attribute.
---
--- Example:
---
--- > div ! onkeydown "bar" $ "Hello."
---
--- Result:
---
--- > <div onkeydown="bar">Hello.</div>
---
-onkeydown :: AttributeValue  -- ^ Attribute value.
-          -> Attribute       -- ^ Resulting attribute.
-onkeydown = attribute " onkeydown=\""
-{-# INLINE onkeydown #-}
-
--- | Combinator for the @onkeypress@ attribute.
---
--- Example:
---
--- > div ! onkeypress "bar" $ "Hello."
---
--- Result:
---
--- > <div onkeypress="bar">Hello.</div>
---
-onkeypress :: AttributeValue  -- ^ Attribute value.
-           -> Attribute       -- ^ Resulting attribute.
-onkeypress = attribute " onkeypress=\""
-{-# INLINE onkeypress #-}
-
--- | Combinator for the @onkeyup@ attribute.
---
--- Example:
---
--- > div ! onkeyup "bar" $ "Hello."
---
--- Result:
---
--- > <div onkeyup="bar">Hello.</div>
---
-onkeyup :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-onkeyup = attribute " onkeyup=\""
-{-# INLINE onkeyup #-}
-
--- | Combinator for the @onload@ attribute.
---
--- Example:
---
--- > div ! onload "bar" $ "Hello."
---
--- Result:
---
--- > <div onload="bar">Hello.</div>
---
-onload :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-onload = attribute " onload=\""
-{-# INLINE onload #-}
-
--- | Combinator for the @onmousedown@ attribute.
---
--- Example:
---
--- > div ! onmousedown "bar" $ "Hello."
---
--- Result:
---
--- > <div onmousedown="bar">Hello.</div>
---
-onmousedown :: AttributeValue  -- ^ Attribute value.
-            -> Attribute       -- ^ Resulting attribute.
-onmousedown = attribute " onmousedown=\""
-{-# INLINE onmousedown #-}
-
--- | Combinator for the @onmousemove@ attribute.
---
--- Example:
---
--- > div ! onmousemove "bar" $ "Hello."
---
--- Result:
---
--- > <div onmousemove="bar">Hello.</div>
---
-onmousemove :: AttributeValue  -- ^ Attribute value.
-            -> Attribute       -- ^ Resulting attribute.
-onmousemove = attribute " onmousemove=\""
-{-# INLINE onmousemove #-}
-
--- | Combinator for the @onmouseout@ attribute.
---
--- Example:
---
--- > div ! onmouseout "bar" $ "Hello."
---
--- Result:
---
--- > <div onmouseout="bar">Hello.</div>
---
-onmouseout :: AttributeValue  -- ^ Attribute value.
-           -> Attribute       -- ^ Resulting attribute.
-onmouseout = attribute " onmouseout=\""
-{-# INLINE onmouseout #-}
-
--- | Combinator for the @onmouseover@ attribute.
---
--- Example:
---
--- > div ! onmouseover "bar" $ "Hello."
---
--- Result:
---
--- > <div onmouseover="bar">Hello.</div>
---
-onmouseover :: AttributeValue  -- ^ Attribute value.
-            -> Attribute       -- ^ Resulting attribute.
-onmouseover = attribute " onmouseover=\""
-{-# INLINE onmouseover #-}
-
--- | Combinator for the @onmouseup@ attribute.
---
--- Example:
---
--- > div ! onmouseup "bar" $ "Hello."
---
--- Result:
---
--- > <div onmouseup="bar">Hello.</div>
---
-onmouseup :: AttributeValue  -- ^ Attribute value.
-          -> Attribute       -- ^ Resulting attribute.
-onmouseup = attribute " onmouseup=\""
-{-# INLINE onmouseup #-}
-
--- | Combinator for the @onreset@ attribute.
---
--- Example:
---
--- > div ! onreset "bar" $ "Hello."
---
--- Result:
---
--- > <div onreset="bar">Hello.</div>
---
-onreset :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-onreset = attribute " onreset=\""
-{-# INLINE onreset #-}
-
--- | Combinator for the @onselect@ attribute.
---
--- Example:
---
--- > div ! onselect "bar" $ "Hello."
---
--- Result:
---
--- > <div onselect="bar">Hello.</div>
---
-onselect :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-onselect = attribute " onselect=\""
-{-# INLINE onselect #-}
-
--- | Combinator for the @onsubmit@ attribute.
---
--- Example:
---
--- > div ! onsubmit "bar" $ "Hello."
---
--- Result:
---
--- > <div onsubmit="bar">Hello.</div>
---
-onsubmit :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-onsubmit = attribute " onsubmit=\""
-{-# INLINE onsubmit #-}
-
--- | Combinator for the @onunload@ attribute.
---
--- Example:
---
--- > div ! onunload "bar" $ "Hello."
---
--- Result:
---
--- > <div onunload="bar">Hello.</div>
---
-onunload :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-onunload = attribute " onunload=\""
-{-# INLINE onunload #-}
-
--- | Combinator for the @profile@ attribute.
---
--- Example:
---
--- > div ! profile "bar" $ "Hello."
---
--- Result:
---
--- > <div profile="bar">Hello.</div>
---
-profile :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-profile = attribute " profile=\""
-{-# INLINE profile #-}
-
--- | Combinator for the @readonly@ attribute.
---
--- Example:
---
--- > div ! readonly "bar" $ "Hello."
---
--- Result:
---
--- > <div readonly="bar">Hello.</div>
---
-readonly :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-readonly = attribute " readonly=\""
-{-# INLINE readonly #-}
-
--- | Combinator for the @rel@ attribute.
---
--- Example:
---
--- > div ! rel "bar" $ "Hello."
---
--- Result:
---
--- > <div rel="bar">Hello.</div>
---
-rel :: AttributeValue  -- ^ Attribute value.
-    -> Attribute       -- ^ Resulting attribute.
-rel = attribute " rel=\""
-{-# INLINE rel #-}
-
--- | Combinator for the @rev@ attribute.
---
--- Example:
---
--- > div ! rev "bar" $ "Hello."
---
--- Result:
---
--- > <div rev="bar">Hello.</div>
---
-rev :: AttributeValue  -- ^ Attribute value.
-    -> Attribute       -- ^ Resulting attribute.
-rev = attribute " rev=\""
-{-# INLINE rev #-}
-
--- | Combinator for the @rows@ attribute.
---
--- Example:
---
--- > div ! rows "bar" $ "Hello."
---
--- Result:
---
--- > <div rows="bar">Hello.</div>
---
-rows :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-rows = attribute " rows=\""
-{-# INLINE rows #-}
-
--- | Combinator for the @rowspan@ attribute.
---
--- Example:
---
--- > div ! rowspan "bar" $ "Hello."
---
--- Result:
---
--- > <div rowspan="bar">Hello.</div>
---
-rowspan :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-rowspan = attribute " rowspan=\""
-{-# INLINE rowspan #-}
-
--- | Combinator for the @rules@ attribute.
---
--- Example:
---
--- > div ! rules "bar" $ "Hello."
---
--- Result:
---
--- > <div rules="bar">Hello.</div>
---
-rules :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-rules = attribute " rules=\""
-{-# INLINE rules #-}
-
--- | Combinator for the @scheme@ attribute.
---
--- Example:
---
--- > div ! scheme "bar" $ "Hello."
---
--- Result:
---
--- > <div scheme="bar">Hello.</div>
---
-scheme :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-scheme = attribute " scheme=\""
-{-# INLINE scheme #-}
-
--- | Combinator for the @scope@ attribute.
---
--- Example:
---
--- > div ! scope "bar" $ "Hello."
---
--- Result:
---
--- > <div scope="bar">Hello.</div>
---
-scope :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-scope = attribute " scope=\""
-{-# INLINE scope #-}
-
--- | Combinator for the @selected@ attribute.
---
--- Example:
---
--- > div ! selected "bar" $ "Hello."
---
--- Result:
---
--- > <div selected="bar">Hello.</div>
---
-selected :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-selected = attribute " selected=\""
-{-# INLINE selected #-}
-
--- | Combinator for the @shape@ attribute.
---
--- Example:
---
--- > div ! shape "bar" $ "Hello."
---
--- Result:
---
--- > <div shape="bar">Hello.</div>
---
-shape :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-shape = attribute " shape=\""
-{-# INLINE shape #-}
-
--- | Combinator for the @size@ attribute.
---
--- Example:
---
--- > div ! size "bar" $ "Hello."
---
--- Result:
---
--- > <div size="bar">Hello.</div>
---
-size :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-size = attribute " size=\""
-{-# INLINE size #-}
-
--- | Combinator for the @span@ attribute.
---
--- Example:
---
--- > div ! span "bar" $ "Hello."
---
--- Result:
---
--- > <div span="bar">Hello.</div>
---
-span :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-span = attribute " span=\""
-{-# INLINE span #-}
-
--- | Combinator for the @src@ attribute.
---
--- Example:
---
--- > div ! src "bar" $ "Hello."
---
--- Result:
---
--- > <div src="bar">Hello.</div>
---
-src :: AttributeValue  -- ^ Attribute value.
-    -> Attribute       -- ^ Resulting attribute.
-src = attribute " src=\""
-{-# INLINE src #-}
-
--- | Combinator for the @standby@ attribute.
---
--- Example:
---
--- > div ! standby "bar" $ "Hello."
---
--- Result:
---
--- > <div standby="bar">Hello.</div>
---
-standby :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-standby = attribute " standby=\""
-{-# INLINE standby #-}
-
--- | Combinator for the @style@ attribute.
---
--- Example:
---
--- > div ! style "bar" $ "Hello."
---
--- Result:
---
--- > <div style="bar">Hello.</div>
---
-style :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-style = attribute " style=\""
-{-# INLINE style #-}
-
--- | Combinator for the @summary@ attribute.
---
--- Example:
---
--- > div ! summary "bar" $ "Hello."
---
--- Result:
---
--- > <div summary="bar">Hello.</div>
---
-summary :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-summary = attribute " summary=\""
-{-# INLINE summary #-}
-
--- | Combinator for the @tabindex@ attribute.
---
--- Example:
---
--- > div ! tabindex "bar" $ "Hello."
---
--- Result:
---
--- > <div tabindex="bar">Hello.</div>
---
-tabindex :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-tabindex = attribute " tabindex=\""
-{-# INLINE tabindex #-}
-
--- | Combinator for the @title@ attribute.
---
--- Example:
---
--- > div ! title "bar" $ "Hello."
---
--- Result:
---
--- > <div title="bar">Hello.</div>
---
-title :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-title = attribute " title=\""
-{-# INLINE title #-}
-
--- | Combinator for the @type@ attribute.
---
--- Example:
---
--- > div ! type_ "bar" $ "Hello."
---
--- Result:
---
--- > <div type="bar">Hello.</div>
---
-type_ :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-type_ = attribute " type=\""
-{-# INLINE type_ #-}
-
--- | Combinator for the @usemap@ attribute.
---
--- Example:
---
--- > div ! usemap "bar" $ "Hello."
---
--- Result:
---
--- > <div usemap="bar">Hello.</div>
---
-usemap :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-usemap = attribute " usemap=\""
-{-# INLINE usemap #-}
-
--- | Combinator for the @valign@ attribute.
---
--- Example:
---
--- > div ! valign "bar" $ "Hello."
---
--- Result:
---
--- > <div valign="bar">Hello.</div>
---
-valign :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-valign = attribute " valign=\""
-{-# INLINE valign #-}
-
--- | Combinator for the @value@ attribute.
---
--- Example:
---
--- > div ! value "bar" $ "Hello."
---
--- Result:
---
--- > <div value="bar">Hello.</div>
---
-value :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-value = attribute " value=\""
-{-# INLINE value #-}
-
--- | Combinator for the @valuetype@ attribute.
---
--- Example:
---
--- > div ! valuetype "bar" $ "Hello."
---
--- Result:
---
--- > <div valuetype="bar">Hello.</div>
---
-valuetype :: AttributeValue  -- ^ Attribute value.
-          -> Attribute       -- ^ Resulting attribute.
-valuetype = attribute " valuetype=\""
-{-# INLINE valuetype #-}
-
--- | Combinator for the @width@ attribute.
---
--- Example:
---
--- > div ! width "bar" $ "Hello."
---
--- Result:
---
--- > <div width="bar">Hello.</div>
---
-width :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-width = attribute " width=\""
-{-# INLINE width #-}
diff --git a/src/Text/Blaze/Html5.hs b/src/Text/Blaze/Html5.hs
deleted file mode 100644
--- a/src/Text/Blaze/Html5.hs
+++ /dev/null
@@ -1,1684 +0,0 @@
-{-# LANGUAGE OverloadedStrings #-}
--- | This module exports HTML combinators used to create documents.
---
-module Text.Blaze.Html5
-    ( module Text.Blaze
-    , html
-    , docType
-    , a
-    , abbr
-    , address
-    , area
-    , article
-    , aside
-    , audio
-    , b
-    , base
-    , bdo
-    , blockquote
-    , body
-    , br
-    , button
-    , canvas
-    , caption
-    , cite
-    , code
-    , col
-    , colgroup
-    , command
-    , datalist
-    , dd
-    , del
-    , details
-    , dfn
-    , div
-    , dl
-    , dt
-    , em
-    , embed
-    , fieldset
-    , figcaption
-    , figure
-    , footer
-    , form
-    , h1
-    , h2
-    , h3
-    , h4
-    , h5
-    , h6
-    , head
-    , header
-    , hgroup
-    , hr
-    , htmlNoDocType
-    , i
-    , iframe
-    , img
-    , input
-    , ins
-    , kbd
-    , keygen
-    , label
-    , legend
-    , li
-    , link
-    , map
-    , mark
-    , menu
-    , meta
-    , meter
-    , nav
-    , noscript
-    , object
-    , ol
-    , optgroup
-    , option
-    , output
-    , p
-    , param
-    , pre
-    , progress
-    , q
-    , rp
-    , rt
-    , ruby
-    , samp
-    , script
-    , section
-    , select
-    , small
-    , source
-    , span
-    , strong
-    , style
-    , sub
-    , summary
-    , sup
-    , table
-    , tbody
-    , td
-    , textarea
-    , tfoot
-    , th
-    , thead
-    , time
-    , title
-    , tr
-    , ul
-    , var
-    , video
-    ) where
-
-import Prelude ()
-import Data.Monoid (mappend)
-
-import Text.Blaze
-import Text.Blaze.Internal (parent, leaf, open)
-
--- | Combinator for the @\<html>@ element. This combinator will also
--- insert the correct doctype.
---
--- Example:
---
--- > html $ span $ text "foo"
---
--- Result:
---
--- > <!DOCTYPE HTML>
--- > <html><span>foo</span></html>
---
-html :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-html inner = docType `mappend` htmlNoDocType inner
-{-# INLINE html #-}
-
--- | Combinator for the document type. This should be placed at the top
--- of every HTML page.
---
--- Example:
---
--- > docType
---
--- Result:
---
--- > <!DOCTYPE HTML>
---
-docType :: Html a  -- ^ The document type HTML.
-docType = preEscapedText "<!DOCTYPE HTML>\n"
-{-# INLINE docType #-}
-
--- | Combinator for the @\<a>@ element.
---
--- Example:
---
--- > a $ span $ text "foo"
---
--- Result:
---
--- > <a><span>foo</span></a>
---
-a :: Html a  -- ^ Inner HTML.
-  -> Html b  -- ^ Resulting HTML.
-a = parent "<a" "</a>"
-{-# INLINE a #-}
-
--- | Combinator for the @\<abbr>@ element.
---
--- Example:
---
--- > abbr $ span $ text "foo"
---
--- Result:
---
--- > <abbr><span>foo</span></abbr>
---
-abbr :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-abbr = parent "<abbr" "</abbr>"
-{-# INLINE abbr #-}
-
--- | Combinator for the @\<address>@ element.
---
--- Example:
---
--- > address $ span $ text "foo"
---
--- Result:
---
--- > <address><span>foo</span></address>
---
-address :: Html a  -- ^ Inner HTML.
-        -> Html b  -- ^ Resulting HTML.
-address = parent "<address" "</address>"
-{-# INLINE address #-}
-
--- | Combinator for the @\<area />@ element.
---
--- Example:
---
--- > area
---
--- Result:
---
--- > <area />
---
-area :: Html a  -- ^ Resulting HTML.
-area = leaf "<area"
-{-# INLINE area #-}
-
--- | Combinator for the @\<article>@ element.
---
--- Example:
---
--- > article $ span $ text "foo"
---
--- Result:
---
--- > <article><span>foo</span></article>
---
-article :: Html a  -- ^ Inner HTML.
-        -> Html b  -- ^ Resulting HTML.
-article = parent "<article" "</article>"
-{-# INLINE article #-}
-
--- | Combinator for the @\<aside>@ element.
---
--- Example:
---
--- > aside $ span $ text "foo"
---
--- Result:
---
--- > <aside><span>foo</span></aside>
---
-aside :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-aside = parent "<aside" "</aside>"
-{-# INLINE aside #-}
-
--- | Combinator for the @\<audio>@ element.
---
--- Example:
---
--- > audio $ span $ text "foo"
---
--- Result:
---
--- > <audio><span>foo</span></audio>
---
-audio :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-audio = parent "<audio" "</audio>"
-{-# INLINE audio #-}
-
--- | Combinator for the @\<b>@ element.
---
--- Example:
---
--- > b $ span $ text "foo"
---
--- Result:
---
--- > <b><span>foo</span></b>
---
-b :: Html a  -- ^ Inner HTML.
-  -> Html b  -- ^ Resulting HTML.
-b = parent "<b" "</b>"
-{-# INLINE b #-}
-
--- | Combinator for the @\<base>@ element.
---
--- Example:
---
--- > base $ span $ text "foo"
---
--- Result:
---
--- > <base><span>foo</span></base>
---
-base :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-base = parent "<base" "</base>"
-{-# INLINE base #-}
-
--- | Combinator for the @\<bdo>@ element.
---
--- Example:
---
--- > bdo $ span $ text "foo"
---
--- Result:
---
--- > <bdo><span>foo</span></bdo>
---
-bdo :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-bdo = parent "<bdo" "</bdo>"
-{-# INLINE bdo #-}
-
--- | Combinator for the @\<blockquote>@ element.
---
--- Example:
---
--- > blockquote $ span $ text "foo"
---
--- Result:
---
--- > <blockquote><span>foo</span></blockquote>
---
-blockquote :: Html a  -- ^ Inner HTML.
-           -> Html b  -- ^ Resulting HTML.
-blockquote = parent "<blockquote" "</blockquote>"
-{-# INLINE blockquote #-}
-
--- | Combinator for the @\<body>@ element.
---
--- Example:
---
--- > body $ span $ text "foo"
---
--- Result:
---
--- > <body><span>foo</span></body>
---
-body :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-body = parent "<body" "</body>"
-{-# INLINE body #-}
-
--- | Combinator for the @\<br />@ element.
---
--- Example:
---
--- > br
---
--- Result:
---
--- > <br />
---
-br :: Html a  -- ^ Resulting HTML.
-br = leaf "<br"
-{-# INLINE br #-}
-
--- | Combinator for the @\<button>@ element.
---
--- Example:
---
--- > button $ span $ text "foo"
---
--- Result:
---
--- > <button><span>foo</span></button>
---
-button :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-button = parent "<button" "</button>"
-{-# INLINE button #-}
-
--- | Combinator for the @\<canvas>@ element.
---
--- Example:
---
--- > canvas $ span $ text "foo"
---
--- Result:
---
--- > <canvas><span>foo</span></canvas>
---
-canvas :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-canvas = parent "<canvas" "</canvas>"
-{-# INLINE canvas #-}
-
--- | Combinator for the @\<caption>@ element.
---
--- Example:
---
--- > caption $ span $ text "foo"
---
--- Result:
---
--- > <caption><span>foo</span></caption>
---
-caption :: Html a  -- ^ Inner HTML.
-        -> Html b  -- ^ Resulting HTML.
-caption = parent "<caption" "</caption>"
-{-# INLINE caption #-}
-
--- | Combinator for the @\<cite>@ element.
---
--- Example:
---
--- > cite $ span $ text "foo"
---
--- Result:
---
--- > <cite><span>foo</span></cite>
---
-cite :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-cite = parent "<cite" "</cite>"
-{-# INLINE cite #-}
-
--- | Combinator for the @\<code>@ element.
---
--- Example:
---
--- > code $ span $ text "foo"
---
--- Result:
---
--- > <code><span>foo</span></code>
---
-code :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-code = parent "<code" "</code>"
-{-# INLINE code #-}
-
--- | Combinator for the @\<col />@ element.
---
--- Example:
---
--- > col
---
--- Result:
---
--- > <col />
---
-col :: Html a  -- ^ Resulting HTML.
-col = leaf "<col"
-{-# INLINE col #-}
-
--- | Combinator for the @\<colgroup>@ element.
---
--- Example:
---
--- > colgroup $ span $ text "foo"
---
--- Result:
---
--- > <colgroup><span>foo</span></colgroup>
---
-colgroup :: Html a  -- ^ Inner HTML.
-         -> Html b  -- ^ Resulting HTML.
-colgroup = parent "<colgroup" "</colgroup>"
-{-# INLINE colgroup #-}
-
--- | Combinator for the @\<command>@ element.
---
--- Example:
---
--- > command $ span $ text "foo"
---
--- Result:
---
--- > <command><span>foo</span></command>
---
-command :: Html a  -- ^ Inner HTML.
-        -> Html b  -- ^ Resulting HTML.
-command = parent "<command" "</command>"
-{-# INLINE command #-}
-
--- | Combinator for the @\<datalist>@ element.
---
--- Example:
---
--- > datalist $ span $ text "foo"
---
--- Result:
---
--- > <datalist><span>foo</span></datalist>
---
-datalist :: Html a  -- ^ Inner HTML.
-         -> Html b  -- ^ Resulting HTML.
-datalist = parent "<datalist" "</datalist>"
-{-# INLINE datalist #-}
-
--- | Combinator for the @\<dd>@ element.
---
--- Example:
---
--- > dd $ span $ text "foo"
---
--- Result:
---
--- > <dd><span>foo</span></dd>
---
-dd :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-dd = parent "<dd" "</dd>"
-{-# INLINE dd #-}
-
--- | Combinator for the @\<del>@ element.
---
--- Example:
---
--- > del $ span $ text "foo"
---
--- Result:
---
--- > <del><span>foo</span></del>
---
-del :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-del = parent "<del" "</del>"
-{-# INLINE del #-}
-
--- | Combinator for the @\<details>@ element.
---
--- Example:
---
--- > details $ span $ text "foo"
---
--- Result:
---
--- > <details><span>foo</span></details>
---
-details :: Html a  -- ^ Inner HTML.
-        -> Html b  -- ^ Resulting HTML.
-details = parent "<details" "</details>"
-{-# INLINE details #-}
-
--- | Combinator for the @\<dfn>@ element.
---
--- Example:
---
--- > dfn $ span $ text "foo"
---
--- Result:
---
--- > <dfn><span>foo</span></dfn>
---
-dfn :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-dfn = parent "<dfn" "</dfn>"
-{-# INLINE dfn #-}
-
--- | Combinator for the @\<div>@ element.
---
--- Example:
---
--- > div $ span $ text "foo"
---
--- Result:
---
--- > <div><span>foo</span></div>
---
-div :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-div = parent "<div" "</div>"
-{-# INLINE div #-}
-
--- | Combinator for the @\<dl>@ element.
---
--- Example:
---
--- > dl $ span $ text "foo"
---
--- Result:
---
--- > <dl><span>foo</span></dl>
---
-dl :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-dl = parent "<dl" "</dl>"
-{-# INLINE dl #-}
-
--- | Combinator for the @\<dt>@ element.
---
--- Example:
---
--- > dt $ span $ text "foo"
---
--- Result:
---
--- > <dt><span>foo</span></dt>
---
-dt :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-dt = parent "<dt" "</dt>"
-{-# INLINE dt #-}
-
--- | Combinator for the @\<em>@ element.
---
--- Example:
---
--- > em $ span $ text "foo"
---
--- Result:
---
--- > <em><span>foo</span></em>
---
-em :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-em = parent "<em" "</em>"
-{-# INLINE em #-}
-
--- | Combinator for the @\<embed />@ element.
---
--- Example:
---
--- > embed
---
--- Result:
---
--- > <embed />
---
-embed :: Html a  -- ^ Resulting HTML.
-embed = leaf "<embed"
-{-# INLINE embed #-}
-
--- | Combinator for the @\<fieldset>@ element.
---
--- Example:
---
--- > fieldset $ span $ text "foo"
---
--- Result:
---
--- > <fieldset><span>foo</span></fieldset>
---
-fieldset :: Html a  -- ^ Inner HTML.
-         -> Html b  -- ^ Resulting HTML.
-fieldset = parent "<fieldset" "</fieldset>"
-{-# INLINE fieldset #-}
-
--- | Combinator for the @\<figcaption>@ element.
---
--- Example:
---
--- > figcaption $ span $ text "foo"
---
--- Result:
---
--- > <figcaption><span>foo</span></figcaption>
---
-figcaption :: Html a  -- ^ Inner HTML.
-           -> Html b  -- ^ Resulting HTML.
-figcaption = parent "<figcaption" "</figcaption>"
-{-# INLINE figcaption #-}
-
--- | Combinator for the @\<figure>@ element.
---
--- Example:
---
--- > figure $ span $ text "foo"
---
--- Result:
---
--- > <figure><span>foo</span></figure>
---
-figure :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-figure = parent "<figure" "</figure>"
-{-# INLINE figure #-}
-
--- | Combinator for the @\<footer>@ element.
---
--- Example:
---
--- > footer $ span $ text "foo"
---
--- Result:
---
--- > <footer><span>foo</span></footer>
---
-footer :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-footer = parent "<footer" "</footer>"
-{-# INLINE footer #-}
-
--- | Combinator for the @\<form>@ element.
---
--- Example:
---
--- > form $ span $ text "foo"
---
--- Result:
---
--- > <form><span>foo</span></form>
---
-form :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-form = parent "<form" "</form>"
-{-# INLINE form #-}
-
--- | Combinator for the @\<h1>@ element.
---
--- Example:
---
--- > h1 $ span $ text "foo"
---
--- Result:
---
--- > <h1><span>foo</span></h1>
---
-h1 :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-h1 = parent "<h1" "</h1>"
-{-# INLINE h1 #-}
-
--- | Combinator for the @\<h2>@ element.
---
--- Example:
---
--- > h2 $ span $ text "foo"
---
--- Result:
---
--- > <h2><span>foo</span></h2>
---
-h2 :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-h2 = parent "<h2" "</h2>"
-{-# INLINE h2 #-}
-
--- | Combinator for the @\<h3>@ element.
---
--- Example:
---
--- > h3 $ span $ text "foo"
---
--- Result:
---
--- > <h3><span>foo</span></h3>
---
-h3 :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-h3 = parent "<h3" "</h3>"
-{-# INLINE h3 #-}
-
--- | Combinator for the @\<h4>@ element.
---
--- Example:
---
--- > h4 $ span $ text "foo"
---
--- Result:
---
--- > <h4><span>foo</span></h4>
---
-h4 :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-h4 = parent "<h4" "</h4>"
-{-# INLINE h4 #-}
-
--- | Combinator for the @\<h5>@ element.
---
--- Example:
---
--- > h5 $ span $ text "foo"
---
--- Result:
---
--- > <h5><span>foo</span></h5>
---
-h5 :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-h5 = parent "<h5" "</h5>"
-{-# INLINE h5 #-}
-
--- | Combinator for the @\<h6>@ element.
---
--- Example:
---
--- > h6 $ span $ text "foo"
---
--- Result:
---
--- > <h6><span>foo</span></h6>
---
-h6 :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-h6 = parent "<h6" "</h6>"
-{-# INLINE h6 #-}
-
--- | Combinator for the @\<head>@ element.
---
--- Example:
---
--- > head $ span $ text "foo"
---
--- Result:
---
--- > <head><span>foo</span></head>
---
-head :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-head = parent "<head" "</head>"
-{-# INLINE head #-}
-
--- | Combinator for the @\<header>@ element.
---
--- Example:
---
--- > header $ span $ text "foo"
---
--- Result:
---
--- > <header><span>foo</span></header>
---
-header :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-header = parent "<header" "</header>"
-{-# INLINE header #-}
-
--- | Combinator for the @\<hgroup>@ element.
---
--- Example:
---
--- > hgroup $ span $ text "foo"
---
--- Result:
---
--- > <hgroup><span>foo</span></hgroup>
---
-hgroup :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-hgroup = parent "<hgroup" "</hgroup>"
-{-# INLINE hgroup #-}
-
--- | Combinator for the @\<hr />@ element.
---
--- Example:
---
--- > hr
---
--- Result:
---
--- > <hr />
---
-hr :: Html a  -- ^ Resulting HTML.
-hr = leaf "<hr"
-{-# INLINE hr #-}
-
--- | Combinator for the @\<html>@ element.
---
--- Example:
---
--- > htmlNoDocType $ span $ text "foo"
---
--- Result:
---
--- > <html><span>foo</span></html>
---
-htmlNoDocType :: Html a  -- ^ Inner HTML.
-              -> Html b  -- ^ Resulting HTML.
-htmlNoDocType = parent "<html" "</html>"
-{-# INLINE htmlNoDocType #-}
-
--- | Combinator for the @\<i>@ element.
---
--- Example:
---
--- > i $ span $ text "foo"
---
--- Result:
---
--- > <i><span>foo</span></i>
---
-i :: Html a  -- ^ Inner HTML.
-  -> Html b  -- ^ Resulting HTML.
-i = parent "<i" "</i>"
-{-# INLINE i #-}
-
--- | Combinator for the @\<iframe>@ element.
---
--- Example:
---
--- > iframe $ span $ text "foo"
---
--- Result:
---
--- > <iframe><span>foo</span></iframe>
---
-iframe :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-iframe = parent "<iframe" "</iframe>"
-{-# INLINE iframe #-}
-
--- | Combinator for the @\<img />@ element.
---
--- Example:
---
--- > img
---
--- Result:
---
--- > <img />
---
-img :: Html a  -- ^ Resulting HTML.
-img = leaf "<img"
-{-# INLINE img #-}
-
--- | Combinator for the @\<input />@ element.
---
--- Example:
---
--- > input
---
--- Result:
---
--- > <input />
---
-input :: Html a  -- ^ Resulting HTML.
-input = leaf "<input"
-{-# INLINE input #-}
-
--- | Combinator for the @\<ins>@ element.
---
--- Example:
---
--- > ins $ span $ text "foo"
---
--- Result:
---
--- > <ins><span>foo</span></ins>
---
-ins :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-ins = parent "<ins" "</ins>"
-{-# INLINE ins #-}
-
--- | Combinator for the @\<kbd>@ element.
---
--- Example:
---
--- > kbd $ span $ text "foo"
---
--- Result:
---
--- > <kbd><span>foo</span></kbd>
---
-kbd :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-kbd = parent "<kbd" "</kbd>"
-{-# INLINE kbd #-}
-
--- | Combinator for the @\<keygen>@ element.
---
--- Example:
---
--- > keygen $ span $ text "foo"
---
--- Result:
---
--- > <keygen><span>foo</span></keygen>
---
-keygen :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-keygen = parent "<keygen" "</keygen>"
-{-# INLINE keygen #-}
-
--- | Combinator for the @\<label>@ element.
---
--- Example:
---
--- > label $ span $ text "foo"
---
--- Result:
---
--- > <label><span>foo</span></label>
---
-label :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-label = parent "<label" "</label>"
-{-# INLINE label #-}
-
--- | Combinator for the @\<legend>@ element.
---
--- Example:
---
--- > legend $ span $ text "foo"
---
--- Result:
---
--- > <legend><span>foo</span></legend>
---
-legend :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-legend = parent "<legend" "</legend>"
-{-# INLINE legend #-}
-
--- | Combinator for the @\<li>@ element.
---
--- Example:
---
--- > li $ span $ text "foo"
---
--- Result:
---
--- > <li><span>foo</span></li>
---
-li :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-li = parent "<li" "</li>"
-{-# INLINE li #-}
-
--- | Combinator for the @\<link />@ element.
---
--- Example:
---
--- > link
---
--- Result:
---
--- > <link />
---
-link :: Html a  -- ^ Resulting HTML.
-link = leaf "<link"
-{-# INLINE link #-}
-
--- | Combinator for the @\<map>@ element.
---
--- Example:
---
--- > map $ span $ text "foo"
---
--- Result:
---
--- > <map><span>foo</span></map>
---
-map :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-map = parent "<map" "</map>"
-{-# INLINE map #-}
-
--- | Combinator for the @\<mark>@ element.
---
--- Example:
---
--- > mark $ span $ text "foo"
---
--- Result:
---
--- > <mark><span>foo</span></mark>
---
-mark :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-mark = parent "<mark" "</mark>"
-{-# INLINE mark #-}
-
--- | Combinator for the @\<menu>@ element.
---
--- Example:
---
--- > menu $ span $ text "foo"
---
--- Result:
---
--- > <menu><span>foo</span></menu>
---
-menu :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-menu = parent "<menu" "</menu>"
-{-# INLINE menu #-}
-
--- | Combinator for the @\<meta />@ element.
---
--- Example:
---
--- > meta
---
--- Result:
---
--- > <meta />
---
-meta :: Html a  -- ^ Resulting HTML.
-meta = leaf "<meta"
-{-# INLINE meta #-}
-
--- | Combinator for the @\<meter>@ element.
---
--- Example:
---
--- > meter $ span $ text "foo"
---
--- Result:
---
--- > <meter><span>foo</span></meter>
---
-meter :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-meter = parent "<meter" "</meter>"
-{-# INLINE meter #-}
-
--- | Combinator for the @\<nav>@ element.
---
--- Example:
---
--- > nav $ span $ text "foo"
---
--- Result:
---
--- > <nav><span>foo</span></nav>
---
-nav :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-nav = parent "<nav" "</nav>"
-{-# INLINE nav #-}
-
--- | Combinator for the @\<noscript>@ element.
---
--- Example:
---
--- > noscript $ span $ text "foo"
---
--- Result:
---
--- > <noscript><span>foo</span></noscript>
---
-noscript :: Html a  -- ^ Inner HTML.
-         -> Html b  -- ^ Resulting HTML.
-noscript = parent "<noscript" "</noscript>"
-{-# INLINE noscript #-}
-
--- | Combinator for the @\<object>@ element.
---
--- Example:
---
--- > object $ span $ text "foo"
---
--- Result:
---
--- > <object><span>foo</span></object>
---
-object :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-object = parent "<object" "</object>"
-{-# INLINE object #-}
-
--- | Combinator for the @\<ol>@ element.
---
--- Example:
---
--- > ol $ span $ text "foo"
---
--- Result:
---
--- > <ol><span>foo</span></ol>
---
-ol :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-ol = parent "<ol" "</ol>"
-{-# INLINE ol #-}
-
--- | Combinator for the @\<optgroup>@ element.
---
--- Example:
---
--- > optgroup $ span $ text "foo"
---
--- Result:
---
--- > <optgroup><span>foo</span></optgroup>
---
-optgroup :: Html a  -- ^ Inner HTML.
-         -> Html b  -- ^ Resulting HTML.
-optgroup = parent "<optgroup" "</optgroup>"
-{-# INLINE optgroup #-}
-
--- | Combinator for the @\<option>@ element.
---
--- Example:
---
--- > option $ span $ text "foo"
---
--- Result:
---
--- > <option><span>foo</span></option>
---
-option :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-option = parent "<option" "</option>"
-{-# INLINE option #-}
-
--- | Combinator for the @\<output>@ element.
---
--- Example:
---
--- > output $ span $ text "foo"
---
--- Result:
---
--- > <output><span>foo</span></output>
---
-output :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-output = parent "<output" "</output>"
-{-# INLINE output #-}
-
--- | Combinator for the @\<p>@ element.
---
--- Example:
---
--- > p $ span $ text "foo"
---
--- Result:
---
--- > <p><span>foo</span></p>
---
-p :: Html a  -- ^ Inner HTML.
-  -> Html b  -- ^ Resulting HTML.
-p = parent "<p" "</p>"
-{-# INLINE p #-}
-
--- | Combinator for the @\<param />@ element.
---
--- Example:
---
--- > param
---
--- Result:
---
--- > <param />
---
-param :: Html a  -- ^ Resulting HTML.
-param = leaf "<param"
-{-# INLINE param #-}
-
--- | Combinator for the @\<pre>@ element.
---
--- Example:
---
--- > pre $ span $ text "foo"
---
--- Result:
---
--- > <pre><span>foo</span></pre>
---
-pre :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-pre = parent "<pre" "</pre>"
-{-# INLINE pre #-}
-
--- | Combinator for the @\<progress>@ element.
---
--- Example:
---
--- > progress $ span $ text "foo"
---
--- Result:
---
--- > <progress><span>foo</span></progress>
---
-progress :: Html a  -- ^ Inner HTML.
-         -> Html b  -- ^ Resulting HTML.
-progress = parent "<progress" "</progress>"
-{-# INLINE progress #-}
-
--- | Combinator for the @\<q>@ element.
---
--- Example:
---
--- > q $ span $ text "foo"
---
--- Result:
---
--- > <q><span>foo</span></q>
---
-q :: Html a  -- ^ Inner HTML.
-  -> Html b  -- ^ Resulting HTML.
-q = parent "<q" "</q>"
-{-# INLINE q #-}
-
--- | Combinator for the @\<rp>@ element.
---
--- Example:
---
--- > rp $ span $ text "foo"
---
--- Result:
---
--- > <rp><span>foo</span></rp>
---
-rp :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-rp = parent "<rp" "</rp>"
-{-# INLINE rp #-}
-
--- | Combinator for the @\<rt>@ element.
---
--- Example:
---
--- > rt $ span $ text "foo"
---
--- Result:
---
--- > <rt><span>foo</span></rt>
---
-rt :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-rt = parent "<rt" "</rt>"
-{-# INLINE rt #-}
-
--- | Combinator for the @\<ruby>@ element.
---
--- Example:
---
--- > ruby $ span $ text "foo"
---
--- Result:
---
--- > <ruby><span>foo</span></ruby>
---
-ruby :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-ruby = parent "<ruby" "</ruby>"
-{-# INLINE ruby #-}
-
--- | Combinator for the @\<samp>@ element.
---
--- Example:
---
--- > samp $ span $ text "foo"
---
--- Result:
---
--- > <samp><span>foo</span></samp>
---
-samp :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-samp = parent "<samp" "</samp>"
-{-# INLINE samp #-}
-
--- | Combinator for the @\<script>@ element.
---
--- Example:
---
--- > script $ span $ text "foo"
---
--- Result:
---
--- > <script><span>foo</span></script>
---
-script :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-script = parent "<script" "</script>"
-{-# INLINE script #-}
-
--- | Combinator for the @\<section>@ element.
---
--- Example:
---
--- > section $ span $ text "foo"
---
--- Result:
---
--- > <section><span>foo</span></section>
---
-section :: Html a  -- ^ Inner HTML.
-        -> Html b  -- ^ Resulting HTML.
-section = parent "<section" "</section>"
-{-# INLINE section #-}
-
--- | Combinator for the @\<select>@ element.
---
--- Example:
---
--- > select $ span $ text "foo"
---
--- Result:
---
--- > <select><span>foo</span></select>
---
-select :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-select = parent "<select" "</select>"
-{-# INLINE select #-}
-
--- | Combinator for the @\<small>@ element.
---
--- Example:
---
--- > small $ span $ text "foo"
---
--- Result:
---
--- > <small><span>foo</span></small>
---
-small :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-small = parent "<small" "</small>"
-{-# INLINE small #-}
-
--- | Combinator for the @\<source>@ element.
---
--- Example:
---
--- > source $ span $ text "foo"
---
--- Result:
---
--- > <source><span>foo</span></source>
---
-source :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-source = parent "<source" "</source>"
-{-# INLINE source #-}
-
--- | Combinator for the @\<span>@ element.
---
--- Example:
---
--- > span $ span $ text "foo"
---
--- Result:
---
--- > <span><span>foo</span></span>
---
-span :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-span = parent "<span" "</span>"
-{-# INLINE span #-}
-
--- | Combinator for the @\<strong>@ element.
---
--- Example:
---
--- > strong $ span $ text "foo"
---
--- Result:
---
--- > <strong><span>foo</span></strong>
---
-strong :: Html a  -- ^ Inner HTML.
-       -> Html b  -- ^ Resulting HTML.
-strong = parent "<strong" "</strong>"
-{-# INLINE strong #-}
-
--- | Combinator for the @\<style>@ element.
---
--- Example:
---
--- > style $ span $ text "foo"
---
--- Result:
---
--- > <style><span>foo</span></style>
---
-style :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-style = parent "<style" "</style>"
-{-# INLINE style #-}
-
--- | Combinator for the @\<sub>@ element.
---
--- Example:
---
--- > sub $ span $ text "foo"
---
--- Result:
---
--- > <sub><span>foo</span></sub>
---
-sub :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-sub = parent "<sub" "</sub>"
-{-# INLINE sub #-}
-
--- | Combinator for the @\<summary>@ element.
---
--- Example:
---
--- > summary $ span $ text "foo"
---
--- Result:
---
--- > <summary><span>foo</span></summary>
---
-summary :: Html a  -- ^ Inner HTML.
-        -> Html b  -- ^ Resulting HTML.
-summary = parent "<summary" "</summary>"
-{-# INLINE summary #-}
-
--- | Combinator for the @\<sup>@ element.
---
--- Example:
---
--- > sup $ span $ text "foo"
---
--- Result:
---
--- > <sup><span>foo</span></sup>
---
-sup :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-sup = parent "<sup" "</sup>"
-{-# INLINE sup #-}
-
--- | Combinator for the @\<table>@ element.
---
--- Example:
---
--- > table $ span $ text "foo"
---
--- Result:
---
--- > <table><span>foo</span></table>
---
-table :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-table = parent "<table" "</table>"
-{-# INLINE table #-}
-
--- | Combinator for the @\<tbody>@ element.
---
--- Example:
---
--- > tbody $ span $ text "foo"
---
--- Result:
---
--- > <tbody><span>foo</span></tbody>
---
-tbody :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-tbody = parent "<tbody" "</tbody>"
-{-# INLINE tbody #-}
-
--- | Combinator for the @\<td>@ element.
---
--- Example:
---
--- > td $ span $ text "foo"
---
--- Result:
---
--- > <td><span>foo</span></td>
---
-td :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-td = parent "<td" "</td>"
-{-# INLINE td #-}
-
--- | Combinator for the @\<textarea>@ element.
---
--- Example:
---
--- > textarea $ span $ text "foo"
---
--- Result:
---
--- > <textarea><span>foo</span></textarea>
---
-textarea :: Html a  -- ^ Inner HTML.
-         -> Html b  -- ^ Resulting HTML.
-textarea = parent "<textarea" "</textarea>"
-{-# INLINE textarea #-}
-
--- | Combinator for the @\<tfoot>@ element.
---
--- Example:
---
--- > tfoot $ span $ text "foo"
---
--- Result:
---
--- > <tfoot><span>foo</span></tfoot>
---
-tfoot :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-tfoot = parent "<tfoot" "</tfoot>"
-{-# INLINE tfoot #-}
-
--- | Combinator for the @\<th>@ element.
---
--- Example:
---
--- > th $ span $ text "foo"
---
--- Result:
---
--- > <th><span>foo</span></th>
---
-th :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-th = parent "<th" "</th>"
-{-# INLINE th #-}
-
--- | Combinator for the @\<thead>@ element.
---
--- Example:
---
--- > thead $ span $ text "foo"
---
--- Result:
---
--- > <thead><span>foo</span></thead>
---
-thead :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-thead = parent "<thead" "</thead>"
-{-# INLINE thead #-}
-
--- | Combinator for the @\<time>@ element.
---
--- Example:
---
--- > time $ span $ text "foo"
---
--- Result:
---
--- > <time><span>foo</span></time>
---
-time :: Html a  -- ^ Inner HTML.
-     -> Html b  -- ^ Resulting HTML.
-time = parent "<time" "</time>"
-{-# INLINE time #-}
-
--- | Combinator for the @\<title>@ element.
---
--- Example:
---
--- > title $ span $ text "foo"
---
--- Result:
---
--- > <title><span>foo</span></title>
---
-title :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-title = parent "<title" "</title>"
-{-# INLINE title #-}
-
--- | Combinator for the @\<tr>@ element.
---
--- Example:
---
--- > tr $ span $ text "foo"
---
--- Result:
---
--- > <tr><span>foo</span></tr>
---
-tr :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-tr = parent "<tr" "</tr>"
-{-# INLINE tr #-}
-
--- | Combinator for the @\<ul>@ element.
---
--- Example:
---
--- > ul $ span $ text "foo"
---
--- Result:
---
--- > <ul><span>foo</span></ul>
---
-ul :: Html a  -- ^ Inner HTML.
-   -> Html b  -- ^ Resulting HTML.
-ul = parent "<ul" "</ul>"
-{-# INLINE ul #-}
-
--- | Combinator for the @\<var>@ element.
---
--- Example:
---
--- > var $ span $ text "foo"
---
--- Result:
---
--- > <var><span>foo</span></var>
---
-var :: Html a  -- ^ Inner HTML.
-    -> Html b  -- ^ Resulting HTML.
-var = parent "<var" "</var>"
-{-# INLINE var #-}
-
--- | Combinator for the @\<video>@ element.
---
--- Example:
---
--- > video $ span $ text "foo"
---
--- Result:
---
--- > <video><span>foo</span></video>
---
-video :: Html a  -- ^ Inner HTML.
-      -> Html b  -- ^ Resulting HTML.
-video = parent "<video" "</video>"
-{-# INLINE video #-}
diff --git a/src/Text/Blaze/Html5/Attributes.hs b/src/Text/Blaze/Html5/Attributes.hs
deleted file mode 100644
--- a/src/Text/Blaze/Html5/Attributes.hs
+++ /dev/null
@@ -1,1948 +0,0 @@
-{-# LANGUAGE OverloadedStrings #-}
--- | This module exports combinators that provide you with the
--- ability to set attributes on HTML elements.
---
-module Text.Blaze.Html5.Attributes
-    ( accept
-    , accept_charset
-    , accesskey
-    , action
-    , alt
-    , async
-    , autocomplete
-    , autofocus
-    , autoplay
-    , challenge
-    , charset
-    , checked
-    , cite
-    , class_
-    , cols
-    , colspan
-    , content
-    , contenteditable
-    , contextmenu
-    , controls
-    , coords
-    , data_
-    , datetime
-    , defer
-    , dir
-    , disabled
-    , draggable
-    , enctype
-    , for
-    , form
-    , formaction
-    , formenctype
-    , formmethod
-    , formnovalidate
-    , formtarget
-    , headers
-    , height
-    , hidden
-    , high
-    , href
-    , hreflang
-    , http_equiv
-    , icon
-    , id
-    , ismap
-    , item
-    , itemprop
-    , keytype
-    , label
-    , lang
-    , list
-    , loop
-    , low
-    , manifest
-    , max
-    , maxlength
-    , media
-    , method
-    , min
-    , multiple
-    , name
-    , novalidate
-    , onafterprint
-    , onbeforeonload
-    , onbeforeprint
-    , onblur
-    , onerror
-    , onfocus
-    , onhaschange
-    , onload
-    , onmessage
-    , onoffline
-    , ononline
-    , onpagehide
-    , onpageshow
-    , onpropstate
-    , onredo
-    , onresize
-    , onstorage
-    , onundo
-    , onunload
-    , open
-    , optimum
-    , pattern
-    , ping
-    , placeholder
-    , preload
-    , pubdate
-    , radiogroup
-    , readonly
-    , rel
-    , required
-    , reversed
-    , rows
-    , rowspan
-    , sandbox
-    , scope
-    , scoped
-    , seamless
-    , selected
-    , shape
-    , size
-    , sizes
-    , span
-    , spellcheck
-    , src
-    , srcdoc
-    , start
-    , step
-    , style
-    , subject
-    , summary
-    , tabindex
-    , target
-    , title
-    , type_
-    , usemap
-    , value
-    , width
-    , wrap
-    , xmlns
-    ) where
-
-import Prelude ()
-
-import Data.Text (Text)
-
-import Text.Blaze.Internal (Attribute, AttributeValue, attribute)
-
--- | Combinator for the @accept@ attribute.
---
--- Example:
---
--- > div ! accept "bar" $ "Hello."
---
--- Result:
---
--- > <div accept="bar">Hello.</div>
---
-accept :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-accept = attribute " accept=\""
-{-# INLINE accept #-}
-
--- | Combinator for the @accept-charset@ attribute.
---
--- Example:
---
--- > div ! accept_charset "bar" $ "Hello."
---
--- Result:
---
--- > <div accept-charset="bar">Hello.</div>
---
-accept_charset :: AttributeValue  -- ^ Attribute value.
-               -> Attribute       -- ^ Resulting attribute.
-accept_charset = attribute " accept-charset=\""
-{-# INLINE accept_charset #-}
-
--- | Combinator for the @accesskey@ attribute.
---
--- Example:
---
--- > div ! accesskey "bar" $ "Hello."
---
--- Result:
---
--- > <div accesskey="bar">Hello.</div>
---
-accesskey :: AttributeValue  -- ^ Attribute value.
-          -> Attribute       -- ^ Resulting attribute.
-accesskey = attribute " accesskey=\""
-{-# INLINE accesskey #-}
-
--- | Combinator for the @action@ attribute.
---
--- Example:
---
--- > div ! action "bar" $ "Hello."
---
--- Result:
---
--- > <div action="bar">Hello.</div>
---
-action :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-action = attribute " action=\""
-{-# INLINE action #-}
-
--- | Combinator for the @alt@ attribute.
---
--- Example:
---
--- > div ! alt "bar" $ "Hello."
---
--- Result:
---
--- > <div alt="bar">Hello.</div>
---
-alt :: AttributeValue  -- ^ Attribute value.
-    -> Attribute       -- ^ Resulting attribute.
-alt = attribute " alt=\""
-{-# INLINE alt #-}
-
--- | Combinator for the @async@ attribute.
---
--- Example:
---
--- > div ! async "bar" $ "Hello."
---
--- Result:
---
--- > <div async="bar">Hello.</div>
---
-async :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-async = attribute " async=\""
-{-# INLINE async #-}
-
--- | Combinator for the @autocomplete@ attribute.
---
--- Example:
---
--- > div ! autocomplete "bar" $ "Hello."
---
--- Result:
---
--- > <div autocomplete="bar">Hello.</div>
---
-autocomplete :: AttributeValue  -- ^ Attribute value.
-             -> Attribute       -- ^ Resulting attribute.
-autocomplete = attribute " autocomplete=\""
-{-# INLINE autocomplete #-}
-
--- | Combinator for the @autofocus@ attribute.
---
--- Example:
---
--- > div ! autofocus "bar" $ "Hello."
---
--- Result:
---
--- > <div autofocus="bar">Hello.</div>
---
-autofocus :: AttributeValue  -- ^ Attribute value.
-          -> Attribute       -- ^ Resulting attribute.
-autofocus = attribute " autofocus=\""
-{-# INLINE autofocus #-}
-
--- | Combinator for the @autoplay@ attribute.
---
--- Example:
---
--- > div ! autoplay "bar" $ "Hello."
---
--- Result:
---
--- > <div autoplay="bar">Hello.</div>
---
-autoplay :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-autoplay = attribute " autoplay=\""
-{-# INLINE autoplay #-}
-
--- | Combinator for the @challenge@ attribute.
---
--- Example:
---
--- > div ! challenge "bar" $ "Hello."
---
--- Result:
---
--- > <div challenge="bar">Hello.</div>
---
-challenge :: AttributeValue  -- ^ Attribute value.
-          -> Attribute       -- ^ Resulting attribute.
-challenge = attribute " challenge=\""
-{-# INLINE challenge #-}
-
--- | Combinator for the @charset@ attribute.
---
--- Example:
---
--- > div ! charset "bar" $ "Hello."
---
--- Result:
---
--- > <div charset="bar">Hello.</div>
---
-charset :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-charset = attribute " charset=\""
-{-# INLINE charset #-}
-
--- | Combinator for the @checked@ attribute.
---
--- Example:
---
--- > div ! checked "bar" $ "Hello."
---
--- Result:
---
--- > <div checked="bar">Hello.</div>
---
-checked :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-checked = attribute " checked=\""
-{-# INLINE checked #-}
-
--- | Combinator for the @cite@ attribute.
---
--- Example:
---
--- > div ! cite "bar" $ "Hello."
---
--- Result:
---
--- > <div cite="bar">Hello.</div>
---
-cite :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-cite = attribute " cite=\""
-{-# INLINE cite #-}
-
--- | Combinator for the @class@ attribute.
---
--- Example:
---
--- > div ! class_ "bar" $ "Hello."
---
--- Result:
---
--- > <div class="bar">Hello.</div>
---
-class_ :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-class_ = attribute " class=\""
-{-# INLINE class_ #-}
-
--- | Combinator for the @cols@ attribute.
---
--- Example:
---
--- > div ! cols "bar" $ "Hello."
---
--- Result:
---
--- > <div cols="bar">Hello.</div>
---
-cols :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-cols = attribute " cols=\""
-{-# INLINE cols #-}
-
--- | Combinator for the @colspan@ attribute.
---
--- Example:
---
--- > div ! colspan "bar" $ "Hello."
---
--- Result:
---
--- > <div colspan="bar">Hello.</div>
---
-colspan :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-colspan = attribute " colspan=\""
-{-# INLINE colspan #-}
-
--- | Combinator for the @content@ attribute.
---
--- Example:
---
--- > div ! content "bar" $ "Hello."
---
--- Result:
---
--- > <div content="bar">Hello.</div>
---
-content :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-content = attribute " content=\""
-{-# INLINE content #-}
-
--- | Combinator for the @contenteditable@ attribute.
---
--- Example:
---
--- > div ! contenteditable "bar" $ "Hello."
---
--- Result:
---
--- > <div contenteditable="bar">Hello.</div>
---
-contenteditable :: AttributeValue  -- ^ Attribute value.
-                -> Attribute       -- ^ Resulting attribute.
-contenteditable = attribute " contenteditable=\""
-{-# INLINE contenteditable #-}
-
--- | Combinator for the @contextmenu@ attribute.
---
--- Example:
---
--- > div ! contextmenu "bar" $ "Hello."
---
--- Result:
---
--- > <div contextmenu="bar">Hello.</div>
---
-contextmenu :: AttributeValue  -- ^ Attribute value.
-            -> Attribute       -- ^ Resulting attribute.
-contextmenu = attribute " contextmenu=\""
-{-# INLINE contextmenu #-}
-
--- | Combinator for the @controls@ attribute.
---
--- Example:
---
--- > div ! controls "bar" $ "Hello."
---
--- Result:
---
--- > <div controls="bar">Hello.</div>
---
-controls :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-controls = attribute " controls=\""
-{-# INLINE controls #-}
-
--- | Combinator for the @coords@ attribute.
---
--- Example:
---
--- > div ! coords "bar" $ "Hello."
---
--- Result:
---
--- > <div coords="bar">Hello.</div>
---
-coords :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-coords = attribute " coords=\""
-{-# INLINE coords #-}
-
--- | Combinator for the @data@ attribute.
---
--- Example:
---
--- > div ! data_ "bar" $ "Hello."
---
--- Result:
---
--- > <div data="bar">Hello.</div>
---
-data_ :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-data_ = attribute " data=\""
-{-# INLINE data_ #-}
-
--- | Combinator for the @datetime@ attribute.
---
--- Example:
---
--- > div ! datetime "bar" $ "Hello."
---
--- Result:
---
--- > <div datetime="bar">Hello.</div>
---
-datetime :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-datetime = attribute " datetime=\""
-{-# INLINE datetime #-}
-
--- | Combinator for the @defer@ attribute.
---
--- Example:
---
--- > div ! defer "bar" $ "Hello."
---
--- Result:
---
--- > <div defer="bar">Hello.</div>
---
-defer :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-defer = attribute " defer=\""
-{-# INLINE defer #-}
-
--- | Combinator for the @dir@ attribute.
---
--- Example:
---
--- > div ! dir "bar" $ "Hello."
---
--- Result:
---
--- > <div dir="bar">Hello.</div>
---
-dir :: AttributeValue  -- ^ Attribute value.
-    -> Attribute       -- ^ Resulting attribute.
-dir = attribute " dir=\""
-{-# INLINE dir #-}
-
--- | Combinator for the @disabled@ attribute.
---
--- Example:
---
--- > div ! disabled "bar" $ "Hello."
---
--- Result:
---
--- > <div disabled="bar">Hello.</div>
---
-disabled :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-disabled = attribute " disabled=\""
-{-# INLINE disabled #-}
-
--- | Combinator for the @draggable@ attribute.
---
--- Example:
---
--- > div ! draggable "bar" $ "Hello."
---
--- Result:
---
--- > <div draggable="bar">Hello.</div>
---
-draggable :: AttributeValue  -- ^ Attribute value.
-          -> Attribute       -- ^ Resulting attribute.
-draggable = attribute " draggable=\""
-{-# INLINE draggable #-}
-
--- | Combinator for the @enctype@ attribute.
---
--- Example:
---
--- > div ! enctype "bar" $ "Hello."
---
--- Result:
---
--- > <div enctype="bar">Hello.</div>
---
-enctype :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-enctype = attribute " enctype=\""
-{-# INLINE enctype #-}
-
--- | Combinator for the @for@ attribute.
---
--- Example:
---
--- > div ! for "bar" $ "Hello."
---
--- Result:
---
--- > <div for="bar">Hello.</div>
---
-for :: AttributeValue  -- ^ Attribute value.
-    -> Attribute       -- ^ Resulting attribute.
-for = attribute " for=\""
-{-# INLINE for #-}
-
--- | Combinator for the @form@ attribute.
---
--- Example:
---
--- > div ! form "bar" $ "Hello."
---
--- Result:
---
--- > <div form="bar">Hello.</div>
---
-form :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-form = attribute " form=\""
-{-# INLINE form #-}
-
--- | Combinator for the @formaction@ attribute.
---
--- Example:
---
--- > div ! formaction "bar" $ "Hello."
---
--- Result:
---
--- > <div formaction="bar">Hello.</div>
---
-formaction :: AttributeValue  -- ^ Attribute value.
-           -> Attribute       -- ^ Resulting attribute.
-formaction = attribute " formaction=\""
-{-# INLINE formaction #-}
-
--- | Combinator for the @formenctype@ attribute.
---
--- Example:
---
--- > div ! formenctype "bar" $ "Hello."
---
--- Result:
---
--- > <div formenctype="bar">Hello.</div>
---
-formenctype :: AttributeValue  -- ^ Attribute value.
-            -> Attribute       -- ^ Resulting attribute.
-formenctype = attribute " formenctype=\""
-{-# INLINE formenctype #-}
-
--- | Combinator for the @formmethod@ attribute.
---
--- Example:
---
--- > div ! formmethod "bar" $ "Hello."
---
--- Result:
---
--- > <div formmethod="bar">Hello.</div>
---
-formmethod :: AttributeValue  -- ^ Attribute value.
-           -> Attribute       -- ^ Resulting attribute.
-formmethod = attribute " formmethod=\""
-{-# INLINE formmethod #-}
-
--- | Combinator for the @formnovalidate@ attribute.
---
--- Example:
---
--- > div ! formnovalidate "bar" $ "Hello."
---
--- Result:
---
--- > <div formnovalidate="bar">Hello.</div>
---
-formnovalidate :: AttributeValue  -- ^ Attribute value.
-               -> Attribute       -- ^ Resulting attribute.
-formnovalidate = attribute " formnovalidate=\""
-{-# INLINE formnovalidate #-}
-
--- | Combinator for the @formtarget@ attribute.
---
--- Example:
---
--- > div ! formtarget "bar" $ "Hello."
---
--- Result:
---
--- > <div formtarget="bar">Hello.</div>
---
-formtarget :: AttributeValue  -- ^ Attribute value.
-           -> Attribute       -- ^ Resulting attribute.
-formtarget = attribute " formtarget=\""
-{-# INLINE formtarget #-}
-
--- | Combinator for the @headers@ attribute.
---
--- Example:
---
--- > div ! headers "bar" $ "Hello."
---
--- Result:
---
--- > <div headers="bar">Hello.</div>
---
-headers :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-headers = attribute " headers=\""
-{-# INLINE headers #-}
-
--- | Combinator for the @height@ attribute.
---
--- Example:
---
--- > div ! height "bar" $ "Hello."
---
--- Result:
---
--- > <div height="bar">Hello.</div>
---
-height :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-height = attribute " height=\""
-{-# INLINE height #-}
-
--- | Combinator for the @hidden@ attribute.
---
--- Example:
---
--- > div ! hidden "bar" $ "Hello."
---
--- Result:
---
--- > <div hidden="bar">Hello.</div>
---
-hidden :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-hidden = attribute " hidden=\""
-{-# INLINE hidden #-}
-
--- | Combinator for the @high@ attribute.
---
--- Example:
---
--- > div ! high "bar" $ "Hello."
---
--- Result:
---
--- > <div high="bar">Hello.</div>
---
-high :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-high = attribute " high=\""
-{-# INLINE high #-}
-
--- | Combinator for the @href@ attribute.
---
--- Example:
---
--- > div ! href "bar" $ "Hello."
---
--- Result:
---
--- > <div href="bar">Hello.</div>
---
-href :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-href = attribute " href=\""
-{-# INLINE href #-}
-
--- | Combinator for the @hreflang@ attribute.
---
--- Example:
---
--- > div ! hreflang "bar" $ "Hello."
---
--- Result:
---
--- > <div hreflang="bar">Hello.</div>
---
-hreflang :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-hreflang = attribute " hreflang=\""
-{-# INLINE hreflang #-}
-
--- | Combinator for the @http-equiv@ attribute.
---
--- Example:
---
--- > div ! http_equiv "bar" $ "Hello."
---
--- Result:
---
--- > <div http-equiv="bar">Hello.</div>
---
-http_equiv :: AttributeValue  -- ^ Attribute value.
-           -> Attribute       -- ^ Resulting attribute.
-http_equiv = attribute " http-equiv=\""
-{-# INLINE http_equiv #-}
-
--- | Combinator for the @icon@ attribute.
---
--- Example:
---
--- > div ! icon "bar" $ "Hello."
---
--- Result:
---
--- > <div icon="bar">Hello.</div>
---
-icon :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-icon = attribute " icon=\""
-{-# INLINE icon #-}
-
--- | Combinator for the @id@ attribute.
---
--- Example:
---
--- > div ! id "bar" $ "Hello."
---
--- Result:
---
--- > <div id="bar">Hello.</div>
---
-id :: AttributeValue  -- ^ Attribute value.
-   -> Attribute       -- ^ Resulting attribute.
-id = attribute " id=\""
-{-# INLINE id #-}
-
--- | Combinator for the @ismap@ attribute.
---
--- Example:
---
--- > div ! ismap "bar" $ "Hello."
---
--- Result:
---
--- > <div ismap="bar">Hello.</div>
---
-ismap :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-ismap = attribute " ismap=\""
-{-# INLINE ismap #-}
-
--- | Combinator for the @item@ attribute.
---
--- Example:
---
--- > div ! item "bar" $ "Hello."
---
--- Result:
---
--- > <div item="bar">Hello.</div>
---
-item :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-item = attribute " item=\""
-{-# INLINE item #-}
-
--- | Combinator for the @itemprop@ attribute.
---
--- Example:
---
--- > div ! itemprop "bar" $ "Hello."
---
--- Result:
---
--- > <div itemprop="bar">Hello.</div>
---
-itemprop :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-itemprop = attribute " itemprop=\""
-{-# INLINE itemprop #-}
-
--- | Combinator for the @keytype@ attribute.
---
--- Example:
---
--- > div ! keytype "bar" $ "Hello."
---
--- Result:
---
--- > <div keytype="bar">Hello.</div>
---
-keytype :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-keytype = attribute " keytype=\""
-{-# INLINE keytype #-}
-
--- | Combinator for the @label@ attribute.
---
--- Example:
---
--- > div ! label "bar" $ "Hello."
---
--- Result:
---
--- > <div label="bar">Hello.</div>
---
-label :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-label = attribute " label=\""
-{-# INLINE label #-}
-
--- | Combinator for the @lang@ attribute.
---
--- Example:
---
--- > div ! lang "bar" $ "Hello."
---
--- Result:
---
--- > <div lang="bar">Hello.</div>
---
-lang :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-lang = attribute " lang=\""
-{-# INLINE lang #-}
-
--- | Combinator for the @list@ attribute.
---
--- Example:
---
--- > div ! list "bar" $ "Hello."
---
--- Result:
---
--- > <div list="bar">Hello.</div>
---
-list :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-list = attribute " list=\""
-{-# INLINE list #-}
-
--- | Combinator for the @loop@ attribute.
---
--- Example:
---
--- > div ! loop "bar" $ "Hello."
---
--- Result:
---
--- > <div loop="bar">Hello.</div>
---
-loop :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-loop = attribute " loop=\""
-{-# INLINE loop #-}
-
--- | Combinator for the @low@ attribute.
---
--- Example:
---
--- > div ! low "bar" $ "Hello."
---
--- Result:
---
--- > <div low="bar">Hello.</div>
---
-low :: AttributeValue  -- ^ Attribute value.
-    -> Attribute       -- ^ Resulting attribute.
-low = attribute " low=\""
-{-# INLINE low #-}
-
--- | Combinator for the @manifest@ attribute.
---
--- Example:
---
--- > div ! manifest "bar" $ "Hello."
---
--- Result:
---
--- > <div manifest="bar">Hello.</div>
---
-manifest :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-manifest = attribute " manifest=\""
-{-# INLINE manifest #-}
-
--- | Combinator for the @max@ attribute.
---
--- Example:
---
--- > div ! max "bar" $ "Hello."
---
--- Result:
---
--- > <div max="bar">Hello.</div>
---
-max :: AttributeValue  -- ^ Attribute value.
-    -> Attribute       -- ^ Resulting attribute.
-max = attribute " max=\""
-{-# INLINE max #-}
-
--- | Combinator for the @maxlength@ attribute.
---
--- Example:
---
--- > div ! maxlength "bar" $ "Hello."
---
--- Result:
---
--- > <div maxlength="bar">Hello.</div>
---
-maxlength :: AttributeValue  -- ^ Attribute value.
-          -> Attribute       -- ^ Resulting attribute.
-maxlength = attribute " maxlength=\""
-{-# INLINE maxlength #-}
-
--- | Combinator for the @media@ attribute.
---
--- Example:
---
--- > div ! media "bar" $ "Hello."
---
--- Result:
---
--- > <div media="bar">Hello.</div>
---
-media :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-media = attribute " media=\""
-{-# INLINE media #-}
-
--- | Combinator for the @method@ attribute.
---
--- Example:
---
--- > div ! method "bar" $ "Hello."
---
--- Result:
---
--- > <div method="bar">Hello.</div>
---
-method :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-method = attribute " method=\""
-{-# INLINE method #-}
-
--- | Combinator for the @min@ attribute.
---
--- Example:
---
--- > div ! min "bar" $ "Hello."
---
--- Result:
---
--- > <div min="bar">Hello.</div>
---
-min :: AttributeValue  -- ^ Attribute value.
-    -> Attribute       -- ^ Resulting attribute.
-min = attribute " min=\""
-{-# INLINE min #-}
-
--- | Combinator for the @multiple@ attribute.
---
--- Example:
---
--- > div ! multiple "bar" $ "Hello."
---
--- Result:
---
--- > <div multiple="bar">Hello.</div>
---
-multiple :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-multiple = attribute " multiple=\""
-{-# INLINE multiple #-}
-
--- | Combinator for the @name@ attribute.
---
--- Example:
---
--- > div ! name "bar" $ "Hello."
---
--- Result:
---
--- > <div name="bar">Hello.</div>
---
-name :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-name = attribute " name=\""
-{-# INLINE name #-}
-
--- | Combinator for the @novalidate@ attribute.
---
--- Example:
---
--- > div ! novalidate "bar" $ "Hello."
---
--- Result:
---
--- > <div novalidate="bar">Hello.</div>
---
-novalidate :: AttributeValue  -- ^ Attribute value.
-           -> Attribute       -- ^ Resulting attribute.
-novalidate = attribute " novalidate=\""
-{-# INLINE novalidate #-}
-
--- | Combinator for the @onafterprint@ attribute.
---
--- Example:
---
--- > div ! onafterprint "bar" $ "Hello."
---
--- Result:
---
--- > <div onafterprint="bar">Hello.</div>
---
-onafterprint :: AttributeValue  -- ^ Attribute value.
-             -> Attribute       -- ^ Resulting attribute.
-onafterprint = attribute " onafterprint=\""
-{-# INLINE onafterprint #-}
-
--- | Combinator for the @onbeforeonload@ attribute.
---
--- Example:
---
--- > div ! onbeforeonload "bar" $ "Hello."
---
--- Result:
---
--- > <div onbeforeonload="bar">Hello.</div>
---
-onbeforeonload :: AttributeValue  -- ^ Attribute value.
-               -> Attribute       -- ^ Resulting attribute.
-onbeforeonload = attribute " onbeforeonload=\""
-{-# INLINE onbeforeonload #-}
-
--- | Combinator for the @onbeforeprint@ attribute.
---
--- Example:
---
--- > div ! onbeforeprint "bar" $ "Hello."
---
--- Result:
---
--- > <div onbeforeprint="bar">Hello.</div>
---
-onbeforeprint :: AttributeValue  -- ^ Attribute value.
-              -> Attribute       -- ^ Resulting attribute.
-onbeforeprint = attribute " onbeforeprint=\""
-{-# INLINE onbeforeprint #-}
-
--- | Combinator for the @onblur@ attribute.
---
--- Example:
---
--- > div ! onblur "bar" $ "Hello."
---
--- Result:
---
--- > <div onblur="bar">Hello.</div>
---
-onblur :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-onblur = attribute " onblur=\""
-{-# INLINE onblur #-}
-
--- | Combinator for the @onerror@ attribute.
---
--- Example:
---
--- > div ! onerror "bar" $ "Hello."
---
--- Result:
---
--- > <div onerror="bar">Hello.</div>
---
-onerror :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-onerror = attribute " onerror=\""
-{-# INLINE onerror #-}
-
--- | Combinator for the @onfocus@ attribute.
---
--- Example:
---
--- > div ! onfocus "bar" $ "Hello."
---
--- Result:
---
--- > <div onfocus="bar">Hello.</div>
---
-onfocus :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-onfocus = attribute " onfocus=\""
-{-# INLINE onfocus #-}
-
--- | Combinator for the @onhaschange@ attribute.
---
--- Example:
---
--- > div ! onhaschange "bar" $ "Hello."
---
--- Result:
---
--- > <div onhaschange="bar">Hello.</div>
---
-onhaschange :: AttributeValue  -- ^ Attribute value.
-            -> Attribute       -- ^ Resulting attribute.
-onhaschange = attribute " onhaschange=\""
-{-# INLINE onhaschange #-}
-
--- | Combinator for the @onload@ attribute.
---
--- Example:
---
--- > div ! onload "bar" $ "Hello."
---
--- Result:
---
--- > <div onload="bar">Hello.</div>
---
-onload :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-onload = attribute " onload=\""
-{-# INLINE onload #-}
-
--- | Combinator for the @onmessage@ attribute.
---
--- Example:
---
--- > div ! onmessage "bar" $ "Hello."
---
--- Result:
---
--- > <div onmessage="bar">Hello.</div>
---
-onmessage :: AttributeValue  -- ^ Attribute value.
-          -> Attribute       -- ^ Resulting attribute.
-onmessage = attribute " onmessage=\""
-{-# INLINE onmessage #-}
-
--- | Combinator for the @onoffline@ attribute.
---
--- Example:
---
--- > div ! onoffline "bar" $ "Hello."
---
--- Result:
---
--- > <div onoffline="bar">Hello.</div>
---
-onoffline :: AttributeValue  -- ^ Attribute value.
-          -> Attribute       -- ^ Resulting attribute.
-onoffline = attribute " onoffline=\""
-{-# INLINE onoffline #-}
-
--- | Combinator for the @ononline@ attribute.
---
--- Example:
---
--- > div ! ononline "bar" $ "Hello."
---
--- Result:
---
--- > <div ononline="bar">Hello.</div>
---
-ononline :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-ononline = attribute " ononline=\""
-{-# INLINE ononline #-}
-
--- | Combinator for the @onpagehide@ attribute.
---
--- Example:
---
--- > div ! onpagehide "bar" $ "Hello."
---
--- Result:
---
--- > <div onpagehide="bar">Hello.</div>
---
-onpagehide :: AttributeValue  -- ^ Attribute value.
-           -> Attribute       -- ^ Resulting attribute.
-onpagehide = attribute " onpagehide=\""
-{-# INLINE onpagehide #-}
-
--- | Combinator for the @onpageshow@ attribute.
---
--- Example:
---
--- > div ! onpageshow "bar" $ "Hello."
---
--- Result:
---
--- > <div onpageshow="bar">Hello.</div>
---
-onpageshow :: AttributeValue  -- ^ Attribute value.
-           -> Attribute       -- ^ Resulting attribute.
-onpageshow = attribute " onpageshow=\""
-{-# INLINE onpageshow #-}
-
--- | Combinator for the @onpropstate@ attribute.
---
--- Example:
---
--- > div ! onpropstate "bar" $ "Hello."
---
--- Result:
---
--- > <div onpropstate="bar">Hello.</div>
---
-onpropstate :: AttributeValue  -- ^ Attribute value.
-            -> Attribute       -- ^ Resulting attribute.
-onpropstate = attribute " onpropstate=\""
-{-# INLINE onpropstate #-}
-
--- | Combinator for the @onredo@ attribute.
---
--- Example:
---
--- > div ! onredo "bar" $ "Hello."
---
--- Result:
---
--- > <div onredo="bar">Hello.</div>
---
-onredo :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-onredo = attribute " onredo=\""
-{-# INLINE onredo #-}
-
--- | Combinator for the @onresize@ attribute.
---
--- Example:
---
--- > div ! onresize "bar" $ "Hello."
---
--- Result:
---
--- > <div onresize="bar">Hello.</div>
---
-onresize :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-onresize = attribute " onresize=\""
-{-# INLINE onresize #-}
-
--- | Combinator for the @onstorage@ attribute.
---
--- Example:
---
--- > div ! onstorage "bar" $ "Hello."
---
--- Result:
---
--- > <div onstorage="bar">Hello.</div>
---
-onstorage :: AttributeValue  -- ^ Attribute value.
-          -> Attribute       -- ^ Resulting attribute.
-onstorage = attribute " onstorage=\""
-{-# INLINE onstorage #-}
-
--- | Combinator for the @onundo@ attribute.
---
--- Example:
---
--- > div ! onundo "bar" $ "Hello."
---
--- Result:
---
--- > <div onundo="bar">Hello.</div>
---
-onundo :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-onundo = attribute " onundo=\""
-{-# INLINE onundo #-}
-
--- | Combinator for the @onunload@ attribute.
---
--- Example:
---
--- > div ! onunload "bar" $ "Hello."
---
--- Result:
---
--- > <div onunload="bar">Hello.</div>
---
-onunload :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-onunload = attribute " onunload=\""
-{-# INLINE onunload #-}
-
--- | Combinator for the @open@ attribute.
---
--- Example:
---
--- > div ! open "bar" $ "Hello."
---
--- Result:
---
--- > <div open="bar">Hello.</div>
---
-open :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-open = attribute " open=\""
-{-# INLINE open #-}
-
--- | Combinator for the @optimum@ attribute.
---
--- Example:
---
--- > div ! optimum "bar" $ "Hello."
---
--- Result:
---
--- > <div optimum="bar">Hello.</div>
---
-optimum :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-optimum = attribute " optimum=\""
-{-# INLINE optimum #-}
-
--- | Combinator for the @pattern@ attribute.
---
--- Example:
---
--- > div ! pattern "bar" $ "Hello."
---
--- Result:
---
--- > <div pattern="bar">Hello.</div>
---
-pattern :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-pattern = attribute " pattern=\""
-{-# INLINE pattern #-}
-
--- | Combinator for the @ping@ attribute.
---
--- Example:
---
--- > div ! ping "bar" $ "Hello."
---
--- Result:
---
--- > <div ping="bar">Hello.</div>
---
-ping :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-ping = attribute " ping=\""
-{-# INLINE ping #-}
-
--- | Combinator for the @placeholder@ attribute.
---
--- Example:
---
--- > div ! placeholder "bar" $ "Hello."
---
--- Result:
---
--- > <div placeholder="bar">Hello.</div>
---
-placeholder :: AttributeValue  -- ^ Attribute value.
-            -> Attribute       -- ^ Resulting attribute.
-placeholder = attribute " placeholder=\""
-{-# INLINE placeholder #-}
-
--- | Combinator for the @preload@ attribute.
---
--- Example:
---
--- > div ! preload "bar" $ "Hello."
---
--- Result:
---
--- > <div preload="bar">Hello.</div>
---
-preload :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-preload = attribute " preload=\""
-{-# INLINE preload #-}
-
--- | Combinator for the @pubdate@ attribute.
---
--- Example:
---
--- > div ! pubdate "bar" $ "Hello."
---
--- Result:
---
--- > <div pubdate="bar">Hello.</div>
---
-pubdate :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-pubdate = attribute " pubdate=\""
-{-# INLINE pubdate #-}
-
--- | Combinator for the @radiogroup@ attribute.
---
--- Example:
---
--- > div ! radiogroup "bar" $ "Hello."
---
--- Result:
---
--- > <div radiogroup="bar">Hello.</div>
---
-radiogroup :: AttributeValue  -- ^ Attribute value.
-           -> Attribute       -- ^ Resulting attribute.
-radiogroup = attribute " radiogroup=\""
-{-# INLINE radiogroup #-}
-
--- | Combinator for the @readonly@ attribute.
---
--- Example:
---
--- > div ! readonly "bar" $ "Hello."
---
--- Result:
---
--- > <div readonly="bar">Hello.</div>
---
-readonly :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-readonly = attribute " readonly=\""
-{-# INLINE readonly #-}
-
--- | Combinator for the @rel@ attribute.
---
--- Example:
---
--- > div ! rel "bar" $ "Hello."
---
--- Result:
---
--- > <div rel="bar">Hello.</div>
---
-rel :: AttributeValue  -- ^ Attribute value.
-    -> Attribute       -- ^ Resulting attribute.
-rel = attribute " rel=\""
-{-# INLINE rel #-}
-
--- | Combinator for the @required@ attribute.
---
--- Example:
---
--- > div ! required "bar" $ "Hello."
---
--- Result:
---
--- > <div required="bar">Hello.</div>
---
-required :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-required = attribute " required=\""
-{-# INLINE required #-}
-
--- | Combinator for the @reversed@ attribute.
---
--- Example:
---
--- > div ! reversed "bar" $ "Hello."
---
--- Result:
---
--- > <div reversed="bar">Hello.</div>
---
-reversed :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-reversed = attribute " reversed=\""
-{-# INLINE reversed #-}
-
--- | Combinator for the @rows@ attribute.
---
--- Example:
---
--- > div ! rows "bar" $ "Hello."
---
--- Result:
---
--- > <div rows="bar">Hello.</div>
---
-rows :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-rows = attribute " rows=\""
-{-# INLINE rows #-}
-
--- | Combinator for the @rowspan@ attribute.
---
--- Example:
---
--- > div ! rowspan "bar" $ "Hello."
---
--- Result:
---
--- > <div rowspan="bar">Hello.</div>
---
-rowspan :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-rowspan = attribute " rowspan=\""
-{-# INLINE rowspan #-}
-
--- | Combinator for the @sandbox@ attribute.
---
--- Example:
---
--- > div ! sandbox "bar" $ "Hello."
---
--- Result:
---
--- > <div sandbox="bar">Hello.</div>
---
-sandbox :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-sandbox = attribute " sandbox=\""
-{-# INLINE sandbox #-}
-
--- | Combinator for the @scope@ attribute.
---
--- Example:
---
--- > div ! scope "bar" $ "Hello."
---
--- Result:
---
--- > <div scope="bar">Hello.</div>
---
-scope :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-scope = attribute " scope=\""
-{-# INLINE scope #-}
-
--- | Combinator for the @scoped@ attribute.
---
--- Example:
---
--- > div ! scoped "bar" $ "Hello."
---
--- Result:
---
--- > <div scoped="bar">Hello.</div>
---
-scoped :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-scoped = attribute " scoped=\""
-{-# INLINE scoped #-}
-
--- | Combinator for the @seamless@ attribute.
---
--- Example:
---
--- > div ! seamless "bar" $ "Hello."
---
--- Result:
---
--- > <div seamless="bar">Hello.</div>
---
-seamless :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-seamless = attribute " seamless=\""
-{-# INLINE seamless #-}
-
--- | Combinator for the @selected@ attribute.
---
--- Example:
---
--- > div ! selected "bar" $ "Hello."
---
--- Result:
---
--- > <div selected="bar">Hello.</div>
---
-selected :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-selected = attribute " selected=\""
-{-# INLINE selected #-}
-
--- | Combinator for the @shape@ attribute.
---
--- Example:
---
--- > div ! shape "bar" $ "Hello."
---
--- Result:
---
--- > <div shape="bar">Hello.</div>
---
-shape :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-shape = attribute " shape=\""
-{-# INLINE shape #-}
-
--- | Combinator for the @size@ attribute.
---
--- Example:
---
--- > div ! size "bar" $ "Hello."
---
--- Result:
---
--- > <div size="bar">Hello.</div>
---
-size :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-size = attribute " size=\""
-{-# INLINE size #-}
-
--- | Combinator for the @sizes@ attribute.
---
--- Example:
---
--- > div ! sizes "bar" $ "Hello."
---
--- Result:
---
--- > <div sizes="bar">Hello.</div>
---
-sizes :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-sizes = attribute " sizes=\""
-{-# INLINE sizes #-}
-
--- | Combinator for the @span@ attribute.
---
--- Example:
---
--- > div ! span "bar" $ "Hello."
---
--- Result:
---
--- > <div span="bar">Hello.</div>
---
-span :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-span = attribute " span=\""
-{-# INLINE span #-}
-
--- | Combinator for the @spellcheck@ attribute.
---
--- Example:
---
--- > div ! spellcheck "bar" $ "Hello."
---
--- Result:
---
--- > <div spellcheck="bar">Hello.</div>
---
-spellcheck :: AttributeValue  -- ^ Attribute value.
-           -> Attribute       -- ^ Resulting attribute.
-spellcheck = attribute " spellcheck=\""
-{-# INLINE spellcheck #-}
-
--- | Combinator for the @src@ attribute.
---
--- Example:
---
--- > div ! src "bar" $ "Hello."
---
--- Result:
---
--- > <div src="bar">Hello.</div>
---
-src :: AttributeValue  -- ^ Attribute value.
-    -> Attribute       -- ^ Resulting attribute.
-src = attribute " src=\""
-{-# INLINE src #-}
-
--- | Combinator for the @srcdoc@ attribute.
---
--- Example:
---
--- > div ! srcdoc "bar" $ "Hello."
---
--- Result:
---
--- > <div srcdoc="bar">Hello.</div>
---
-srcdoc :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-srcdoc = attribute " srcdoc=\""
-{-# INLINE srcdoc #-}
-
--- | Combinator for the @start@ attribute.
---
--- Example:
---
--- > div ! start "bar" $ "Hello."
---
--- Result:
---
--- > <div start="bar">Hello.</div>
---
-start :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-start = attribute " start=\""
-{-# INLINE start #-}
-
--- | Combinator for the @step@ attribute.
---
--- Example:
---
--- > div ! step "bar" $ "Hello."
---
--- Result:
---
--- > <div step="bar">Hello.</div>
---
-step :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-step = attribute " step=\""
-{-# INLINE step #-}
-
--- | Combinator for the @style@ attribute.
---
--- Example:
---
--- > div ! style "bar" $ "Hello."
---
--- Result:
---
--- > <div style="bar">Hello.</div>
---
-style :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-style = attribute " style=\""
-{-# INLINE style #-}
-
--- | Combinator for the @subject@ attribute.
---
--- Example:
---
--- > div ! subject "bar" $ "Hello."
---
--- Result:
---
--- > <div subject="bar">Hello.</div>
---
-subject :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-subject = attribute " subject=\""
-{-# INLINE subject #-}
-
--- | Combinator for the @summary@ attribute.
---
--- Example:
---
--- > div ! summary "bar" $ "Hello."
---
--- Result:
---
--- > <div summary="bar">Hello.</div>
---
-summary :: AttributeValue  -- ^ Attribute value.
-        -> Attribute       -- ^ Resulting attribute.
-summary = attribute " summary=\""
-{-# INLINE summary #-}
-
--- | Combinator for the @tabindex@ attribute.
---
--- Example:
---
--- > div ! tabindex "bar" $ "Hello."
---
--- Result:
---
--- > <div tabindex="bar">Hello.</div>
---
-tabindex :: AttributeValue  -- ^ Attribute value.
-         -> Attribute       -- ^ Resulting attribute.
-tabindex = attribute " tabindex=\""
-{-# INLINE tabindex #-}
-
--- | Combinator for the @target@ attribute.
---
--- Example:
---
--- > div ! target "bar" $ "Hello."
---
--- Result:
---
--- > <div target="bar">Hello.</div>
---
-target :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-target = attribute " target=\""
-{-# INLINE target #-}
-
--- | Combinator for the @title@ attribute.
---
--- Example:
---
--- > div ! title "bar" $ "Hello."
---
--- Result:
---
--- > <div title="bar">Hello.</div>
---
-title :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-title = attribute " title=\""
-{-# INLINE title #-}
-
--- | Combinator for the @type@ attribute.
---
--- Example:
---
--- > div ! type_ "bar" $ "Hello."
---
--- Result:
---
--- > <div type="bar">Hello.</div>
---
-type_ :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-type_ = attribute " type=\""
-{-# INLINE type_ #-}
-
--- | Combinator for the @usemap@ attribute.
---
--- Example:
---
--- > div ! usemap "bar" $ "Hello."
---
--- Result:
---
--- > <div usemap="bar">Hello.</div>
---
-usemap :: AttributeValue  -- ^ Attribute value.
-       -> Attribute       -- ^ Resulting attribute.
-usemap = attribute " usemap=\""
-{-# INLINE usemap #-}
-
--- | Combinator for the @value@ attribute.
---
--- Example:
---
--- > div ! value "bar" $ "Hello."
---
--- Result:
---
--- > <div value="bar">Hello.</div>
---
-value :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-value = attribute " value=\""
-{-# INLINE value #-}
-
--- | Combinator for the @width@ attribute.
---
--- Example:
---
--- > div ! width "bar" $ "Hello."
---
--- Result:
---
--- > <div width="bar">Hello.</div>
---
-width :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-width = attribute " width=\""
-{-# INLINE width #-}
-
--- | Combinator for the @wrap@ attribute.
---
--- Example:
---
--- > div ! wrap "bar" $ "Hello."
---
--- Result:
---
--- > <div wrap="bar">Hello.</div>
---
-wrap :: AttributeValue  -- ^ Attribute value.
-     -> Attribute       -- ^ Resulting attribute.
-wrap = attribute " wrap=\""
-{-# INLINE wrap #-}
-
--- | Combinator for the @xmlns@ attribute.
---
--- Example:
---
--- > div ! xmlns "bar" $ "Hello."
---
--- Result:
---
--- > <div xmlns="bar">Hello.</div>
---
-xmlns :: AttributeValue  -- ^ Attribute value.
-      -> Attribute       -- ^ Resulting attribute.
-xmlns = attribute " xmlns=\""
-{-# INLINE xmlns #-}
diff --git a/src/Text/Blaze/Internal.hs b/src/Text/Blaze/Internal.hs
deleted file mode 100644
--- a/src/Text/Blaze/Internal.hs
+++ /dev/null
@@ -1,324 +0,0 @@
-{-# LANGUAGE OverloadedStrings, GeneralizedNewtypeDeriving, Rank2Types,
-             FlexibleInstances #-}
--- | The BlazeHtml core, consisting of functions that offer the power to
--- generate custom HTML elements. It also offers user-centric functions, which
--- are exposed through 'Text.Blaze'.
---
-module Text.Blaze.Internal
-    (
-      -- * Important types.
-      Html
-    , Tag
-    , Attribute
-    , AttributeValue
-
-      -- * Creating custom tags and attributes.
-    , parent
-    , leaf
-    , open
-    , attribute
-    , dataAttribute
-
-      -- * Converting values to HTML.
-    , text
-    , preEscapedText
-    , string
-    , preEscapedString
-    , showHtml
-    , preEscapedShowHtml
-
-      -- * Inserting literal 'ByteString's.
-    , unsafeByteString
-
-      -- * Converting values to tags.
-    , textTag
-    , stringTag
-
-      -- * Converting values to attribute values.
-    , textValue
-    , preEscapedTextValue
-    , stringValue
-    , preEscapedStringValue
-
-      -- * Setting attributes
-    , (!)
-
-      -- * Rendering HTML.
-    , renderHtml
-    ) where
-
-import Data.Monoid (Monoid, mappend, mempty, mconcat)
-
-import Data.ByteString.Char8 (ByteString)
-import qualified Data.ByteString as S
-import qualified Data.ByteString.Lazy as L
-import Data.Text (Text)
-import GHC.Exts (IsString (..))
-
-import Text.Blaze.Internal.Utf8Builder (Utf8Builder)
-import qualified Text.Blaze.Internal.Utf8Builder as B
-import qualified Text.Blaze.Internal.Utf8BuilderHtml as B
-
--- | The core HTML datatype.
---
-newtype Html a = Html
-    { -- | Function to extract the 'Builder'.
-      unHtml :: Utf8Builder -> Utf8Builder
-    }
-
--- | Type for an HTML tag. This can be seen as an internal string type used by
--- BlazeHtml.
---
-newtype Tag = Tag { unTag :: Utf8Builder }
-    deriving (Monoid)
-
--- | Type for an attribute.
---
-newtype Attribute = Attribute (forall a. Html a -> Html a)
-
--- | The type for the value part of an attribute.
---
-newtype AttributeValue = AttributeValue { attributeValue :: Utf8Builder }
-    deriving (Monoid)
-
-instance Monoid (Html a) where
-    mempty = Html $ \_ -> mempty
-    {-# INLINE mempty #-}
-    --SM: Note for the benchmarks: We should test which multi-`mappend`
-    --versions are faster: right or left-associative ones. Then we can register
-    --a rewrite rule taking care of that. I actually guess that this may be one
-    --of the reasons accounting for the speed differences between monadic
-    --syntax and monoid syntax: the rewrite rules for monadic syntax bring the
-    --`>>=` into the better form which results in a better form for `mappend`.
-    (Html h1) `mappend` (Html h2) = Html $ \attrs ->
-        h1 attrs `mappend` h2 attrs
-    {-# INLINE mappend #-}
-    mconcat hs = Html $ \attrs ->
-        foldr mappend mempty $ map (flip unHtml attrs) hs
-    {-# INLINE mconcat #-}
-
-instance Monad Html where
-    return _ = mempty
-    {-# INLINE return #-}
-    (Html h1) >> (Html h2) = Html $
-        \attrs -> h1 attrs `mappend` h2 attrs
-    {-# INLINE (>>) #-}
-    h1 >>= f = h1 >> f (error "_|_")
-    {-# INLINE (>>=) #-}
-
-instance IsString (Html a) where
-    fromString = string
-    {-# INLINE fromString #-}
-
-instance IsString Tag where
-    fromString = stringTag
-    {-# INLINE fromString #-}
-
-instance IsString AttributeValue where
-    fromString = stringValue
-    {-# INLINE fromString #-}
-
--- | Create an HTML parent element.
---
-parent :: Tag     -- ^ Start of the open HTML tag.
-       -> Tag     -- ^ The closing tag.
-       -> Html a  -- ^ Inner HTML, to place in this element.
-       -> Html b  -- ^ Resulting HTML.
-parent begin end = \inner -> Html $ \attrs ->
-    unTag begin
-      `mappend` attrs
-      `mappend` B.fromChar '>'
-      `mappend` unHtml inner mempty
-      `mappend` unTag end
-{-# INLINE parent #-}
-
--- | Create an HTML leaf element.
---
-leaf :: Tag     -- ^ Start of the open HTML tag.
-     -> Html a  -- ^ Resulting HTML.
-leaf begin = Html $ \attrs ->
-    unTag begin
-      `mappend` attrs
-      `mappend` end
-  where
-    end :: Utf8Builder
-    end = B.optimizePiece $ B.fromText $ " />"
-    {-# INLINE end #-}
-{-# INLINE leaf #-}
-
--- | Produce an open tag. This can be used for open tags in HTML 4.01, like
--- for example @<br>@.
---
-open :: Tag     -- ^ Start of the open HTML tag.
-     -> Html a  -- ^ Resulting HTML.
-open begin = Html $ \attrs ->
-    unTag begin
-      `mappend` attrs
-      `mappend` B.fromChar '>'
-{-# INLINE open #-}
-
--- | Create an HTML attribute that can be applied to an HTML element later using
--- the '!' operator.
---
-attribute :: Tag             -- ^ Shared key string for the HTML attribute.
-          -> AttributeValue  -- ^ Value for the HTML attribute.
-          -> Attribute       -- ^ Resulting HTML attribute.
-attribute key value = Attribute $ \(Html h) -> Html $ \attrs ->
-    h $ attrs `mappend` unTag key
-              `mappend` attributeValue value
-              `mappend` B.fromChar '"'
-{-# INLINE attribute #-}
-
--- | From HTML 5 onwards, the user is able to specify custom data attributes.
---
--- An example:
---
--- > <p data-foo="bar">Hello.</p>
---
--- We support this in BlazeHtml using this funcion. The above fragment could
--- be described using BlazeHtml with:
---
--- > p ! dataAttribute "foo" "bar" $ "Hello."
---
-dataAttribute :: Tag             -- ^ Name of the attribute.
-              -> AttributeValue  -- ^ Value for the attribute.
-              -> Attribute       -- ^ Resulting HTML attribute.
-dataAttribute tag = attribute (" data-" `mappend` tag `mappend` "=\"")
-{-# INLINE dataAttribute #-}
-
-class Attributable h where
-    -- | Apply an attribute to an element.
-    --
-    -- Example:
-    --
-    -- > img ! src "foo.png"
-    --
-    -- Result:
-    --
-    -- > <img src="foo.png" />
-    --
-    -- This can be used on nested elements as well.
-    --
-    -- Example:
-    --
-    -- > p ! style "float: right" $ "Hello!"
-    --
-    -- Result:
-    --
-    -- > <p style="float: right">Hello!</p>
-    --
-    (!) :: h -> Attribute -> h
-
-instance Attributable (Html a) where
-    h ! (Attribute f) = f h
-    {-# INLINE (!) #-}
-
-instance Attributable (Html a -> Html b) where
-    h ! (Attribute f) = f . h
-    {-# INLINE (!) #-}
-
--- | Render text. Functions like these can be used to supply content in HTML.
---
-text :: Text    -- ^ Text to render.
-     -> Html a  -- ^ Resulting HTML fragment.
-text = Html . const . B.escapeHtmlFromText
-{-# INLINE text #-}
-
--- | Render text without escaping.
---
-preEscapedText :: Text    -- ^ Text to insert.
-               -> Html a  -- Resulting HTML fragment.
-preEscapedText = Html . const . B.fromText
-{-# INLINE preEscapedText #-}
-
--- | Create an HTML snippet from a 'String'.
---
-string :: String  -- ^ String to insert.
-       -> Html a  -- ^ Resulting HTML fragment.
-string = Html . const . B.escapeHtmlFromString
-{-# INLINE string #-}
-
--- | Create an HTML snippet from a 'String' without escaping
---
-preEscapedString :: String -> Html a
-preEscapedString = Html . const . B.fromString
-{-# INLINE preEscapedString #-}
-
--- | Create an HTML snippet from a datatype that instantiates 'Show'.
---
-showHtml :: Show a
-         => a       -- ^ Value to insert.
-         -> Html b  -- ^ Resulting HTML fragment.
-showHtml = string . show
-{-# INLINE showHtml #-}
-
--- | Create an HTML snippet from a datatype that instantiates 'Show'. This
--- function will not do any HTML entity escaping.
---
-preEscapedShowHtml :: Show a
-                   => a       -- ^ Value to insert.
-                   -> Html b  -- ^ Resulting HTML fragment.
-preEscapedShowHtml = preEscapedString . show
-{-# INLINE preEscapedShowHtml #-}
-
--- | Insert a 'ByteString'. This is an unsafe operation:
---
--- * The 'ByteString' could have the wrong encoding.
---
--- * The 'ByteString' might contain illegal HTML characters (no escaping is
---   done).
---
-unsafeByteString :: ByteString  -- ^ Value to insert.
-                 -> Html a      -- ^ Resulting HTML fragment.
-unsafeByteString = Html . const . B.unsafeFromByteString
-{-# INLINE unsafeByteString #-}
-
--- | Create a tag from a 'Text' value. A tag is a string used to denote a
--- certain HTML element, for example @img@.
---
--- This is only useful if you want to create custom HTML combinators.
---
-textTag :: Text  -- ^ 'Text' for the tag.
-        -> Tag   -- ^ Resulting tag.
-textTag = Tag . B.optimizePiece . B.fromText
-{-# INLINE textTag #-}
-
--- | Create a tag from a 'String' value. For more information, see 'textTag'.
---
-stringTag :: String  -- ^ 'String' for the tag.
-          -> Tag     -- ^ Resulting tag.
-stringTag = Tag . B.optimizePiece . B.fromString
-{-# INLINE stringTag #-}
-
--- | Render an attribute value from 'Text'.
---
-textValue :: Text            -- ^ The actual value.
-          -> AttributeValue  -- ^ Resulting attribute value.
-textValue = AttributeValue . B.escapeHtmlFromText
-{-# INLINE textValue #-}
-
--- | Render an attribute value from 'Text' without escaping.
---
-preEscapedTextValue :: Text            -- ^ Text to insert.
-                    -> AttributeValue  -- Resulting HTML fragment.
-preEscapedTextValue = AttributeValue . B.fromText
-{-# INLINE preEscapedTextValue #-}
-
--- | Create an attribute value from a 'String'.
---
-stringValue :: String -> AttributeValue
-stringValue = AttributeValue . B.escapeHtmlFromString
-{-# INLINE stringValue #-}
-
--- | Create an attribute value from a 'String' without escaping.
---
-preEscapedStringValue :: String -> AttributeValue
-preEscapedStringValue = AttributeValue . B.fromString
-{-# INLINE preEscapedStringValue #-}
-
--- | /O(n)./ Render the HTML fragment to lazy 'L.ByteString'.
---
-renderHtml :: Html a        -- ^ Document to render.
-           -> L.ByteString  -- ^ Resulting output.
-renderHtml = B.toLazyByteString . flip unHtml mempty
-{-# INLINE renderHtml #-}
diff --git a/src/Text/Blaze/Internal/Utf8Builder.hs b/src/Text/Blaze/Internal/Utf8Builder.hs
deleted file mode 100644
--- a/src/Text/Blaze/Internal/Utf8Builder.hs
+++ /dev/null
@@ -1,220 +0,0 @@
-{-# LANGUAGE GeneralizedNewtypeDeriving, BangPatterns #-}
--- | A module for efficiently constructing a 'Builder'. This module offers more
--- functions than the standard ones, optimized for HTML generation.
---
---
---  SM: General remark: Try to split it into Utf8 specific parts and a
---  HtmlBuilder using it. Essentially, a UTF-8 builder is a Text builder that
---  uses UTF-8 for its internal representation. The Text builder from Tom
---  Harper would then be called Utf16Builder. They should offer exactly the
---  same interface (except perhaps for the extraction functions.)
---
-module Text.Blaze.Internal.Utf8Builder 
-    ( 
-      -- * The Utf8Builder type.
-      Utf8Builder
-
-      -- * Creating Builders from various text representations.
-    , fromChar
-    , fromText
-    , fromString
-
-      -- * Creating Builders from ByteStrings.
-    , unsafeFromByteString
-
-      -- * Transformations on the builder.
-    , optimizePiece
-
-      -- * Extracting the value from the builder.
-    , toLazyByteString
-    , toText
-
-      -- * Internal functions to extend the builder.
-      -- ** The write type.
-    , Write
-    , fromUnsafeWrite
-    , optimizeWriteBuilder
-    , writeList
-
-      -- ** Functions to create a write.
-    , writeChar
-    , writeByteString
-    ) where
-
-import Foreign
-import Data.Char (ord)
-import Data.Monoid (Monoid (..))
-import Prelude hiding (quot)
-
-import Debug.Trace (trace)
-import Data.Binary.Builder (Builder)
-import qualified Data.Binary.Builder as B
-import qualified Data.ByteString as S
-import qualified Data.ByteString.Internal as S
-import qualified Data.ByteString.Lazy as L
-import Data.Text (Text)
-import qualified Data.Text as T
-import qualified Data.Text.Encoding as T
-
--- | A newtype definition for the UTF-8 builder monoid.
-newtype Utf8Builder = Utf8Builder Builder
-    deriving (Monoid)
-
--- | /O(1)./ Convert a Haskell character to a 'Utf8Builder', without doing any
--- escaping.
---
-fromChar :: Char -> Utf8Builder
-fromChar = fromUnsafeWrite . writeChar
-
--- | /O(n)./ Convert a 'Text' value to a 'Utf8Builder'. This function will not
--- do any HTML escaping.
---
-fromText :: Text -> Utf8Builder
-fromText text = fromUnsafeWrite $
-    T.foldl (\w c -> w `mappend` writeChar c) mempty text
-
--- | /O(n)./ Convert a Haskell 'String' to a builder. Unlike 'fromHtmlString',
--- this function will not do any escaping.
---
-fromString :: String -> Utf8Builder
-fromString = writeList writeChar
-  -- fromUnsafeWrite $
-    -- foldl (\w c -> w `mappend` writeChar c) mempty string
-
-
--- | /O(n)./ A Builder taking a 'S.ByteString`, copying it. This function is
--- considered unsafe, as a `S.ByteString` can contain invalid UTF-8 bytes, so
--- you chould use it with caution. This function should perform better when
--- dealing with small strings than the fromByteString function from Builder.
---
-unsafeFromByteString :: S.ByteString -> Utf8Builder
-unsafeFromByteString = fromUnsafeWrite . writeByteString
-
--- | /O(n)./ Optimize a small builder. This function has an initial speed
--- penalty, but will speed up later calls of the optimized builder piece. This
--- speedup will only work well for small builders (less than 1k characters).
---
-optimizePiece :: Utf8Builder -> Utf8Builder
-optimizePiece = fromUnsafeWrite . optimizeWriteBuilder
-{-# INLINE optimizePiece #-}
-
--- | /O(n)./ Convert the builder to a 'L.ByteString'.
---
-toLazyByteString :: Utf8Builder -> L.ByteString
-toLazyByteString (Utf8Builder builder) = B.toLazyByteString builder
-
--- | /O(n)./ Convert the builder to a 'Text' value. Please note that this
--- function is a lot slower than the 'toLazyByteString' function.
---
-toText :: Utf8Builder -> Text
-toText = T.concat . map T.decodeUtf8 . L.toChunks . toLazyByteString
-
--- | Abstract representation of a write action to the internal buffer.
---
-data Write = Write
-    {-# UNPACK #-} !Int
-    (Ptr Word8 -> IO ())
-
--- Create a monoid interface for the write actions.
-instance Monoid Write where
-    mempty = Write 0 (const $ return ())
-    {-# INLINE mempty #-}
-    mappend (Write l1 f1) (Write l2 f2) =
-        Write (l1 + l2) (\ptr -> f1 ptr >> f2 (ptr `plusPtr` l1))
-    {-# INLINE mappend #-}
-
--- INV: The writes must be smaller than the default buffer size.
---
--- SM: Note that moving the control flow away from the Builder will give us the
--- next level of speed. This way we have simple tail-recursive functions
--- consuming data and filling the buffer.
-writeList :: (a -> Write) -> [a] -> Utf8Builder
-writeList f xs0 = Utf8Builder $ B.fillBuffer (go xs0 0)
-  where
-    go []         !w !l !p = return (w, Nothing) -- here should come the call to the next filler.
-    go xs@(x:xs') !w !l !p  = case f x of
-      Write n g 
-        | n <= l -> do
-            g p
-            go xs' (w+n) (l-n) (p `plusPtr` n)
-        | otherwise ->
-            return (w, Just (B.forceNewBuffer `mappend` B.fillBuffer (go xs 0)))
-    {-# INLINE go #-}
-{-# INLINE writeList #-}
-
--- | Create a builder from a write.
---
-fromUnsafeWrite :: Write        -- ^ Write to execute.
-                -> Utf8Builder  -- ^ Resulting builder.
-fromUnsafeWrite (Write l f) = Utf8Builder $ B.fromUnsafeWrite l f 
-{-# INLINE fromUnsafeWrite #-}
-
--- | Optimize a small builder to a write operation.
---
-optimizeWriteBuilder :: Utf8Builder  -- ^ Small builder to optimize.
-                     -> Write        -- ^ Resulting write.
-optimizeWriteBuilder = writeByteString . mconcat . L.toChunks . toLazyByteString
-{-# INLINE optimizeWriteBuilder #-}
-
--- | Write a 'S.ByteString' to the builder.
---
-writeByteString :: S.ByteString  -- ^ ByteString to write.
-                -> Write         -- ^ Resulting write.
-writeByteString byteString = Write l f
-  where
-    (fptr, o, l) = S.toForeignPtr byteString
-    f dst = do copyBytes dst (unsafeForeignPtrToPtr fptr `plusPtr` o) l
-               touchForeignPtr fptr
-    {-# INLINE f #-}
-{-# INLINE writeByteString #-}
-
--- | Write a Unicode character, encoding it as UTF-8.
---
-writeChar :: Char   -- ^ Character to write.
-          -> Write  -- ^ Resulting write.
-writeChar = encodeCharUtf8 f1 f2 f3 f4
-  where
-    f1 x = Write 1 $ \ptr -> poke ptr x
-
-    f2 x1 x2 = Write 2 $ \ptr -> do poke ptr x1
-                                    poke (ptr `plusPtr` 1) x2
-
-    f3 x1 x2 x3 = Write 3 $ \ptr -> do poke ptr x1
-                                       poke (ptr `plusPtr` 1) x2
-                                       poke (ptr `plusPtr` 2) x3
-
-    f4 x1 x2 x3 x4 = Write 4 $ \ptr -> do poke ptr x1
-                                          poke (ptr `plusPtr` 1) x2
-                                          poke (ptr `plusPtr` 2) x3
-                                          poke (ptr `plusPtr` 3) x4
-{-# INLINE writeChar #-}
-
--- | Encode a Unicode character to another datatype, using UTF-8. This function
--- acts as an abstract way of encoding characters, as it is unaware of what
--- needs to happen with the resulting bytes: you have to specify functions to
--- deal with those.
---
-encodeCharUtf8 :: (Word8 -> a)                             -- ^ 1-byte UTF-8.
-               -> (Word8 -> Word8 -> a)                    -- ^ 2-byte UTF-8.
-               -> (Word8 -> Word8 -> Word8 -> a)           -- ^ 3-byte UTF-8.
-               -> (Word8 -> Word8 -> Word8 -> Word8 -> a)  -- ^ 4-byte UTF-8.
-               -> Char                                     -- ^ Input 'Char'.
-               -> a                                        -- ^ Result.
-encodeCharUtf8 f1 f2 f3 f4 c = case ord c of
-    x | x <= 0x7F -> f1 $ fromIntegral x
-      | x <= 0x07FF ->
-           let x1 = fromIntegral $ (x `shiftR` 6) + 0xC0
-               x2 = fromIntegral $ (x .&. 0x3F)   + 0x80
-           in f2 x1 x2
-      | x <= 0xFFFF ->
-           let x1 = fromIntegral $ (x `shiftR` 12) + 0xE0
-               x2 = fromIntegral $ ((x `shiftR` 6) .&. 0x3F) + 0x80
-               x3 = fromIntegral $ (x .&. 0x3F) + 0x80
-           in f3 x1 x2 x3
-      | otherwise ->
-           let x1 = fromIntegral $ (x `shiftR` 18) + 0xF0
-               x2 = fromIntegral $ ((x `shiftR` 12) .&. 0x3F) + 0x80
-               x3 = fromIntegral $ ((x `shiftR` 6) .&. 0x3F) + 0x80
-               x4 = fromIntegral $ (x .&. 0x3F) + 0x80
-           in f4 x1 x2 x3 x4
-{-# INLINE encodeCharUtf8 #-}
diff --git a/src/Text/Blaze/Internal/Utf8BuilderHtml.hs b/src/Text/Blaze/Internal/Utf8BuilderHtml.hs
deleted file mode 100644
--- a/src/Text/Blaze/Internal/Utf8BuilderHtml.hs
+++ /dev/null
@@ -1,56 +0,0 @@
-{-# LANGUAGE OverloadedStrings #-}
--- | Module extending 'Utf8Builder' with HTML-specific functions.
---
-module Text.Blaze.Internal.Utf8BuilderHtml
-    ( 
-      -- * Creating builders with HTML escaping.
-      escapeHtmlFromChar
-    , escapeHtmlFromText
-    , escapeHtmlFromString
-    ) where
-
-import Data.Monoid (Monoid (..))
-
-import Data.Text (Text)
-import qualified Data.Text as T
-
-import Text.Blaze.Internal.Utf8Builder
-
--- | /O(1)./ Convert a Haskell character to a 'Utf8Builder'.
---
-escapeHtmlFromChar :: Char -> Utf8Builder
-escapeHtmlFromChar = fromUnsafeWrite . escapeHtmlWriteChar
-
--- | /O(n)./ Convert a 'Text' value to a 'Utf8Builder'. This function does
--- proper HTML escaping.
---
-escapeHtmlFromText :: Text -> Utf8Builder
-escapeHtmlFromText text = fromUnsafeWrite $
-    T.foldl (\w c -> w `mappend` escapeHtmlWriteChar c) mempty text
---
---SM: The above construction is going to kill you (in terms of memory and
---latency) if the text is too long.  Could you ensure that the text is written
---chunkwise? Perhaps, by first breaking the Builder abstraction again and
---inlining the check for enough free memory into the loop. The basic check
---should be equally expensive as summing up the length.
---
-
--- | /O(n)./ Convert a Haskell 'String' to a 'Utf8Builder'. This function does
--- proper escaping for HTML entities.
---
-escapeHtmlFromString :: String -> Utf8Builder
-escapeHtmlFromString = writeList escapeHtmlWriteChar
- -- fromUnsafeWrite $ 
-  --  foldl (\w c -> w `mappend` escapeHtmlWriteChar c) mempty string
-
--- | Write an unicode character to a 'Builder', doing HTML escaping.
---
-escapeHtmlWriteChar :: Char   -- ^ Character to write.
-                    -> Write  -- ^ Resulting write.
-escapeHtmlWriteChar '<' = optimizeWriteBuilder $ fromText "&lt;"
-escapeHtmlWriteChar '>' = optimizeWriteBuilder $ fromText "&gt;"
-escapeHtmlWriteChar '&' = optimizeWriteBuilder $ fromText "&amp;"
-escapeHtmlWriteChar '"' = optimizeWriteBuilder $ fromText "&quot;"
-escapeHtmlWriteChar '\'' = optimizeWriteBuilder $ fromText "&apos;"
-escapeHtmlWriteChar c = writeChar c
-{-# INLINE escapeHtmlWriteChar #-}
