{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RankNTypes        #-}
{-# LANGUAGE TemplateHaskell   #-}
module Shpadoinkle.Html.Element where
import           Control.Monad       (msum)
import           Prelude             hiding (div, head, span)
import           Shpadoinkle
import           Shpadoinkle.Html.TH
$(msum <$> mapM mkElement
  [ "h1"
  , "h2"
  , "h3"
  , "h4"
  , "h5"
  , "h6"
  , "p"
  , "br"
  , "hr"
  , "abbr"
  , "address"
  , "b"
  , "bdi"
  , "bdo"
  , "big"
  , "blockquote"
  , "center"
  , "cite"
  , "code"
  , "del"
  , "dfn"
  , "em"
  , "font"
  , "i"
  , "ins"
  , "kbd"
  , "mark"
  , "meter"
  , "pre"
  , "progress"
  , "q"
  , "rp"
  , "rt"
  , "ruby"
  , "s"
  , "samp"
  , "small"
  , "strike"
  , "strong"
  , "sub"
  , "sup"
  , "time"
  , "tt"
  , "u"
  , "var"
  , "wbr"
  , "form"
  , "input"
  , "textarea"
  , "button"
  , "select"
  , "optgroup"
  , "option"
  , "label"
  , "fieldset"
  , "legend"
  , "datalist"
  , "keygen"
  , "output"
  , "frame"
  , "frameset"
  , "noframes"
  , "iframe"
  , "img"
  , "area"
  , "canvas"
  , "figcaption"
  , "figure"
  , "a"
  , "link"
  , "nav"
  , "ul"
  , "ol"
  , "li"
  , "dir"
  , "dl"
  , "dt"
  , "dd"
  , "menu"
  , "menuitem"
  , "table"
  , "caption"
  , "th"
  , "tr"
  , "td"
  , "thead"
  , "tbody"
  , "tfoot"
  , "col"
  , "colgroup"
  , "style"
  , "div"
  , "span"
  , "header"
  , "footer"
  , "main'"
  , "section"
  , "article"
  , "aside"
  , "details"
  , "dialog"
  , "summary"
  , "head"
  , "meta"
  , "base"
  , "basefont"
  , "script"
  , "noscript"
  , "applet"
  , "embed"
  , "object"
  , "param"
  , "html"
  , "body"
  ])