diff --git a/Rlang-QQ.cabal b/Rlang-QQ.cabal
--- a/Rlang-QQ.cabal
+++ b/Rlang-QQ.cabal
@@ -1,6 +1,6 @@
 name: Rlang-QQ
-version: 0.1.1.0
-cabal-version: >=1.8
+version: 0.2.0.0
+cabal-version: >=1.10
 build-type: Simple
 license: BSD3
 license-file: LICENSE
@@ -18,12 +18,11 @@
              > R --no-save <<< 'install.packages("knitr")'
 category: Development
 author: Adam Vogt <vogt.adam@gmail.com>
-tested-with: GHC == 7.6.2
+tested-with: GHC == 7.6.2, GHC == 7.8-RC1
 data-dir: rsrc
 data-files: Tree.R parseTreeExample.R
 extra-source-files: examples/*.hs,
                     examples/*.Rmd,
-                    examples/*.ref
                     examples/*.png
                     examples/*.ipynb
                     examples/*.html
@@ -36,12 +35,34 @@
 library
     hs-source-dirs: src
 
+    default-language:   Haskell2010
+    default-extensions: ConstraintKinds
+                        DataKinds
+                        FlexibleContexts
+                        FlexibleInstances
+                        FunctionalDependencies
+                        GADTs
+                        KindSignatures
+                        MultiParamTypeClasses
+                        ScopedTypeVariables
+                        TypeFamilies
+                        TypeOperators
+                        ViewPatterns
+
+    other-extensions:   NoMonomorphismRestriction
+                        PolyKinds
+                        TemplateHaskell
+                        UndecidableInstances
+    if (impl(ghc > 7.7))
+      default-extensions: AllowAmbiguousTypes
+
     build-depends: base ==4.*, containers,
-                   template-haskell ==2.8.*, directory, process,
+                   template-haskell <= 3, directory, process,
                    trifecta ==1.*, utf8-string ==0.3.*, bytestring,
                    Cabal, syb, mtl, MaybeT,
-                   binary, vector, HList >= 0.3, temporary,
+                   binary, vector, HList >= 0.3.4, temporary,
                    text, array, zlib, repa,
+                   filepath, split,
                    haskell-src-meta
 
     exposed-modules: RlangQQ.Internal
@@ -50,6 +71,7 @@
                      RlangQQ.FN
                      RlangQQ.NatQQ
                      RlangQQ.MakeRecord
+                     RlangQQ.ParseKnitted
                      RlangQQ
                      HListExtras
 
diff --git a/examples/Makefile b/examples/Makefile
--- a/examples/Makefile
+++ b/examples/Makefile
@@ -6,6 +6,7 @@
 
 default: test6.html test7.html
 	cd ../; runghc examples/runexamples.hs
+	runghc examples/tests.hs
 	ghc -O2 romberg.hs; ./romberg
 
 %.html: %.md
@@ -28,5 +29,5 @@
 
 installdeps:
 	R --no-save <<< 'install.packages(c("knitr", "lattice", "reshape", "ggplot2", "lattice"))'
-	cabal install lens numbers
+	cabal install lens numbers hspec
 
diff --git a/examples/ihaskell3.html b/examples/ihaskell3.html
new file mode 100644
--- /dev/null
+++ b/examples/ihaskell3.html
@@ -0,0 +1,1998 @@
+<!DOCTYPE html>
+<html>
+<head>
+
+<meta charset="utf-8" />
+<title>ihaskell2</title>
+
+<style type="text/css">
+    .clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;content:"";line-height:0}
+.clearfix:after{clear:both}
+.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}
+.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}
+article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}
+audio,canvas,video{display:inline-block;*display:inline;*zoom:1}
+audio:not([controls]){display:none}
+html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}
+a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}
+a:hover,a:active{outline:0}
+sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}
+sup{top:-0.5em}
+sub{bottom:-0.25em}
+img{max-width:100%;width:auto\9;height:auto;vertical-align:middle;border:0;-ms-interpolation-mode:bicubic}
+#map_canvas img,.google-maps img{max-width:none}
+button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle}
+button,input{*overflow:visible;line-height:normal}
+button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}
+button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}
+label,select,button,input[type="button"],input[type="reset"],input[type="submit"],input[type="radio"],input[type="checkbox"]{cursor:pointer}
+input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}
+input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}
+textarea{overflow:auto;vertical-align:top}
+@media print{*{text-shadow:none !important;color:#000 !important;background:transparent !important;box-shadow:none !important} a,a:visited{text-decoration:underline} a[href]:after{content:" (" attr(href) ")"} abbr[title]:after{content:" (" attr(title) ")"} .ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""} pre,blockquote{border:1px solid #999;page-break-inside:avoid} thead{display:table-header-group} tr,img{page-break-inside:avoid} img{max-width:100% !important} @page {margin:.5cm}p,h2,h3{orphans:3;widows:3} h2,h3{page-break-after:avoid}}body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;line-height:20px;color:#000;background-color:#fff}
+a{color:#08c;text-decoration:none}
+a:hover,a:focus{color:#005580;text-decoration:underline}
+.img-rounded{border-radius:6px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}
+.img-polaroid{padding:4px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.1);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.1);box-shadow:0 1px 3px rgba(0,0,0,0.1)}
+.img-circle{border-radius:500px;-webkit-border-radius:500px;-moz-border-radius:500px;border-radius:500px}
+.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;content:"";line-height:0}
+.row:after{clear:both}
+[class*="span"]{float:left;min-height:1px;margin-left:20px}
+.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}
+.span12{width:940px}
+.span11{width:860px}
+.span10{width:780px}
+.span9{width:700px}
+.span8{width:620px}
+.span7{width:540px}
+.span6{width:460px}
+.span5{width:380px}
+.span4{width:300px}
+.span3{width:220px}
+.span2{width:140px}
+.span1{width:60px}
+.offset12{margin-left:980px}
+.offset11{margin-left:900px}
+.offset10{margin-left:820px}
+.offset9{margin-left:740px}
+.offset8{margin-left:660px}
+.offset7{margin-left:580px}
+.offset6{margin-left:500px}
+.offset5{margin-left:420px}
+.offset4{margin-left:340px}
+.offset3{margin-left:260px}
+.offset2{margin-left:180px}
+.offset1{margin-left:100px}
+.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;content:"";line-height:0}
+.row-fluid:after{clear:both}
+.row-fluid [class*="span"]{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;float:left;margin-left:2.127659574468085%;*margin-left:2.074468085106383%}
+.row-fluid [class*="span"]:first-child{margin-left:0}
+.row-fluid .controls-row [class*="span"]+[class*="span"]{margin-left:2.127659574468085%}
+.row-fluid .span12{width:100%;*width:99.94680851063829%}
+.row-fluid .span11{width:91.48936170212765%;*width:91.43617021276594%}
+.row-fluid .span10{width:82.97872340425532%;*width:82.92553191489361%}
+.row-fluid .span9{width:74.46808510638297%;*width:74.41489361702126%}
+.row-fluid .span8{width:65.95744680851064%;*width:65.90425531914893%}
+.row-fluid .span7{width:57.44680851063829%;*width:57.39361702127659%}
+.row-fluid .span6{width:48.93617021276595%;*width:48.88297872340425%}
+.row-fluid .span5{width:40.42553191489362%;*width:40.37234042553192%}
+.row-fluid .span4{width:31.914893617021278%;*width:31.861702127659576%}
+.row-fluid .span3{width:23.404255319148934%;*width:23.351063829787233%}
+.row-fluid .span2{width:14.893617021276595%;*width:14.840425531914894%}
+.row-fluid .span1{width:6.382978723404255%;*width:6.329787234042553%}
+.row-fluid .offset12{margin-left:104.25531914893617%;*margin-left:104.14893617021275%}
+.row-fluid .offset12:first-child{margin-left:102.12765957446808%;*margin-left:102.02127659574467%}
+.row-fluid .offset11{margin-left:95.74468085106382%;*margin-left:95.6382978723404%}
+.row-fluid .offset11:first-child{margin-left:93.61702127659574%;*margin-left:93.51063829787232%}
+.row-fluid .offset10{margin-left:87.23404255319149%;*margin-left:87.12765957446807%}
+.row-fluid .offset10:first-child{margin-left:85.1063829787234%;*margin-left:84.99999999999999%}
+.row-fluid .offset9{margin-left:78.72340425531914%;*margin-left:78.61702127659572%}
+.row-fluid .offset9:first-child{margin-left:76.59574468085106%;*margin-left:76.48936170212764%}
+.row-fluid .offset8{margin-left:70.2127659574468%;*margin-left:70.10638297872339%}
+.row-fluid .offset8:first-child{margin-left:68.08510638297872%;*margin-left:67.9787234042553%}
+.row-fluid .offset7{margin-left:61.70212765957446%;*margin-left:61.59574468085106%}
+.row-fluid .offset7:first-child{margin-left:59.574468085106375%;*margin-left:59.46808510638297%}
+.row-fluid .offset6{margin-left:53.191489361702125%;*margin-left:53.085106382978715%}
+.row-fluid .offset6:first-child{margin-left:51.063829787234035%;*margin-left:50.95744680851063%}
+.row-fluid .offset5{margin-left:44.68085106382979%;*margin-left:44.57446808510638%}
+.row-fluid .offset5:first-child{margin-left:42.5531914893617%;*margin-left:42.4468085106383%}
+.row-fluid .offset4{margin-left:36.170212765957444%;*margin-left:36.06382978723405%}
+.row-fluid .offset4:first-child{margin-left:34.04255319148936%;*margin-left:33.93617021276596%}
+.row-fluid .offset3{margin-left:27.659574468085104%;*margin-left:27.5531914893617%}
+.row-fluid .offset3:first-child{margin-left:25.53191489361702%;*margin-left:25.425531914893618%}
+.row-fluid .offset2{margin-left:19.148936170212764%;*margin-left:19.04255319148936%}
+.row-fluid .offset2:first-child{margin-left:17.02127659574468%;*margin-left:16.914893617021278%}
+.row-fluid .offset1{margin-left:10.638297872340425%;*margin-left:10.53191489361702%}
+.row-fluid .offset1:first-child{margin-left:8.51063829787234%;*margin-left:8.404255319148938%}
+[class*="span"].hide,.row-fluid [class*="span"].hide{display:none}
+[class*="span"].pull-right,.row-fluid [class*="span"].pull-right{float:right}
+.container{margin-right:auto;margin-left:auto;*zoom:1}.container:before,.container:after{display:table;content:"";line-height:0}
+.container:after{clear:both}
+.container-fluid{padding-right:20px;padding-left:20px;*zoom:1}.container-fluid:before,.container-fluid:after{display:table;content:"";line-height:0}
+.container-fluid:after{clear:both}
+p{margin:0 0 10px}
+.lead{margin-bottom:20px;font-size:19.5px;font-weight:200;line-height:30px}
+small{font-size:85%}
+strong{font-weight:bold}
+em{font-style:italic}
+cite{font-style:normal}
+.muted{color:#999}
+a.muted:hover,a.muted:focus{color:#808080}
+.text-warning{color:#c09853}
+a.text-warning:hover,a.text-warning:focus{color:#a47e3c}
+.text-error{color:#b94a48}
+a.text-error:hover,a.text-error:focus{color:#953b39}
+.text-info{color:#3a87ad}
+a.text-info:hover,a.text-info:focus{color:#2d6987}
+.text-success{color:#468847}
+a.text-success:hover,a.text-success:focus{color:#356635}
+.text-left{text-align:left}
+.text-right{text-align:right}
+.text-center{text-align:center}
+h1,h2,h3,h4,h5,h6{margin:10px 0;font-family:inherit;font-weight:bold;line-height:20px;color:inherit;text-rendering:optimizelegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-weight:normal;line-height:1;color:#999}
+h1,h2,h3{line-height:40px}
+h1{font-size:35.75px}
+h2{font-size:29.25px}
+h3{font-size:22.75px}
+h4{font-size:16.25px}
+h5{font-size:13px}
+h6{font-size:11.049999999999999px}
+h1 small{font-size:22.75px}
+h2 small{font-size:16.25px}
+h3 small{font-size:13px}
+h4 small{font-size:13px}
+.page-header{padding-bottom:9px;margin:20px 0 30px;border-bottom:1px solid #eee}
+ul,ol{padding:0;margin:0 0 10px 25px}
+ul ul,ul ol,ol ol,ol ul{margin-bottom:0}
+li{line-height:20px}
+ul.unstyled,ol.unstyled{margin-left:0;list-style:none}
+ul.inline,ol.inline{margin-left:0;list-style:none}ul.inline>li,ol.inline>li{display:inline-block;*display:inline;*zoom:1;padding-left:5px;padding-right:5px}
+dl{margin-bottom:20px}
+dt,dd{line-height:20px}
+dt{font-weight:bold}
+dd{margin-left:10px}
+.dl-horizontal{*zoom:1}.dl-horizontal:before,.dl-horizontal:after{display:table;content:"";line-height:0}
+.dl-horizontal:after{clear:both}
+.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
+.dl-horizontal dd{margin-left:180px}
+hr{margin:20px 0;border:0;border-top:1px solid #eee;border-bottom:1px solid #fff}
+abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}
+abbr.initialism{font-size:90%;text-transform:uppercase}
+blockquote{padding:0 0 0 15px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{margin-bottom:0;font-size:16.25px;font-weight:300;line-height:1.25}
+blockquote small{display:block;line-height:20px;color:#999}blockquote small:before{content:'\2014 \00A0'}
+blockquote.pull-right{float:right;padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}
+blockquote.pull-right small:before{content:''}
+blockquote.pull-right small:after{content:'\00A0 \2014'}
+q:before,q:after,blockquote:before,blockquote:after{content:""}
+address{display:block;margin-bottom:20px;font-style:normal;line-height:20px}
+code,pre{padding:0 3px 2px;font-family:monospace;font-size:11px;color:#333;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}
+code{padding:2px 4px;color:#d14;background-color:#f7f7f9;border:1px solid #e1e1e8;white-space:nowrap}
+pre{display:block;padding:9.5px;margin:0 0 10px;font-size:12px;line-height:20px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}pre.prettyprint{margin-bottom:20px}
+pre code{padding:0;color:inherit;white-space:pre;white-space:pre-wrap;background-color:transparent;border:0}
+.pre-scrollable{max-height:340px;overflow-y:scroll}
+form{margin:0 0 20px}
+fieldset{padding:0;margin:0;border:0}
+legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:19.5px;line-height:40px;color:#333;border:0;border-bottom:1px solid #e5e5e5}legend small{font-size:15px;color:#999}
+label,input,button,select,textarea{font-size:13px;font-weight:normal;line-height:20px}
+input,button,select,textarea{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}
+label{display:block;margin-bottom:5px}
+select,textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{display:inline-block;height:20px;padding:4px 6px;margin-bottom:10px;font-size:13px;line-height:20px;color:#555;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;vertical-align:middle}
+input,textarea,.uneditable-input{width:206px}
+textarea{height:auto}
+textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{background-color:#fff;border:1px solid #ccc;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border linear .2s, box-shadow linear .2s;-moz-transition:border linear .2s, box-shadow linear .2s;-o-transition:border linear .2s, box-shadow linear .2s;transition:border linear .2s, box-shadow linear .2s}textarea:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="time"]:focus,input[type="week"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="color"]:focus,.uneditable-input:focus{border-color:rgba(82,168,236,0.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6)}
+input[type="radio"],input[type="checkbox"]{margin:4px 0 0;*margin-top:0;margin-top:1px \9;line-height:normal}
+input[type="file"],input[type="image"],input[type="submit"],input[type="reset"],input[type="button"],input[type="radio"],input[type="checkbox"]{width:auto}
+select,input[type="file"]{height:30px;*margin-top:4px;line-height:30px}
+select{width:220px;border:1px solid #ccc;background-color:#fff}
+select[multiple],select[size]{height:auto}
+select:focus,input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}
+.uneditable-input,.uneditable-textarea{color:#999;background-color:#fcfcfc;border-color:#ccc;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);cursor:not-allowed}
+.uneditable-input{overflow:hidden;white-space:nowrap}
+.uneditable-textarea{width:auto;height:auto}
+input:-moz-placeholder,textarea:-moz-placeholder{color:#999}
+input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#999}
+input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#999}
+.radio,.checkbox{min-height:20px;padding-left:20px}
+.radio input[type="radio"],.checkbox input[type="checkbox"]{float:left;margin-left:-20px}
+.controls>.radio:first-child,.controls>.checkbox:first-child{padding-top:5px}
+.radio.inline,.checkbox.inline{display:inline-block;padding-top:5px;margin-bottom:0;vertical-align:middle}
+.radio.inline+.radio.inline,.checkbox.inline+.checkbox.inline{margin-left:10px}
+.input-mini{width:60px}
+.input-small{width:90px}
+.input-medium{width:150px}
+.input-large{width:210px}
+.input-xlarge{width:270px}
+.input-xxlarge{width:530px}
+input[class*="span"],select[class*="span"],textarea[class*="span"],.uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"]{float:none;margin-left:0}
+.input-append input[class*="span"],.input-append .uneditable-input[class*="span"],.input-prepend input[class*="span"],.input-prepend .uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"],.row-fluid .input-prepend [class*="span"],.row-fluid .input-append [class*="span"]{display:inline-block}
+input,textarea,.uneditable-input{margin-left:0}
+.controls-row [class*="span"]+[class*="span"]{margin-left:20px}
+input.span12,textarea.span12,.uneditable-input.span12{width:926px}
+input.span11,textarea.span11,.uneditable-input.span11{width:846px}
+input.span10,textarea.span10,.uneditable-input.span10{width:766px}
+input.span9,textarea.span9,.uneditable-input.span9{width:686px}
+input.span8,textarea.span8,.uneditable-input.span8{width:606px}
+input.span7,textarea.span7,.uneditable-input.span7{width:526px}
+input.span6,textarea.span6,.uneditable-input.span6{width:446px}
+input.span5,textarea.span5,.uneditable-input.span5{width:366px}
+input.span4,textarea.span4,.uneditable-input.span4{width:286px}
+input.span3,textarea.span3,.uneditable-input.span3{width:206px}
+input.span2,textarea.span2,.uneditable-input.span2{width:126px}
+input.span1,textarea.span1,.uneditable-input.span1{width:46px}
+.controls-row{*zoom:1}.controls-row:before,.controls-row:after{display:table;content:"";line-height:0}
+.controls-row:after{clear:both}
+.controls-row [class*="span"],.row-fluid .controls-row [class*="span"]{float:left}
+.controls-row .checkbox[class*="span"],.controls-row .radio[class*="span"]{padding-top:5px}
+input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly]{cursor:not-allowed;background-color:#eee}
+input[type="radio"][disabled],input[type="checkbox"][disabled],input[type="radio"][readonly],input[type="checkbox"][readonly]{background-color:transparent}
+.control-group.warning .control-label,.control-group.warning .help-block,.control-group.warning .help-inline{color:#c09853}
+.control-group.warning .checkbox,.control-group.warning .radio,.control-group.warning input,.control-group.warning select,.control-group.warning textarea{color:#c09853}
+.control-group.warning input,.control-group.warning select,.control-group.warning textarea{border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.warning input:focus,.control-group.warning select:focus,.control-group.warning textarea:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}
+.control-group.warning .input-prepend .add-on,.control-group.warning .input-append .add-on{color:#c09853;background-color:#fcf8e3;border-color:#c09853}
+.control-group.error .control-label,.control-group.error .help-block,.control-group.error .help-inline{color:#b94a48}
+.control-group.error .checkbox,.control-group.error .radio,.control-group.error input,.control-group.error select,.control-group.error textarea{color:#b94a48}
+.control-group.error input,.control-group.error select,.control-group.error textarea{border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.error input:focus,.control-group.error select:focus,.control-group.error textarea:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}
+.control-group.error .input-prepend .add-on,.control-group.error .input-append .add-on{color:#b94a48;background-color:#f2dede;border-color:#b94a48}
+.control-group.success .control-label,.control-group.success .help-block,.control-group.success .help-inline{color:#468847}
+.control-group.success .checkbox,.control-group.success .radio,.control-group.success input,.control-group.success select,.control-group.success textarea{color:#468847}
+.control-group.success input,.control-group.success select,.control-group.success textarea{border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.success input:focus,.control-group.success select:focus,.control-group.success textarea:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}
+.control-group.success .input-prepend .add-on,.control-group.success .input-append .add-on{color:#468847;background-color:#dff0d8;border-color:#468847}
+.control-group.info .control-label,.control-group.info .help-block,.control-group.info .help-inline{color:#3a87ad}
+.control-group.info .checkbox,.control-group.info .radio,.control-group.info input,.control-group.info select,.control-group.info textarea{color:#3a87ad}
+.control-group.info input,.control-group.info select,.control-group.info textarea{border-color:#3a87ad;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.info input:focus,.control-group.info select:focus,.control-group.info textarea:focus{border-color:#2d6987;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3}
+.control-group.info .input-prepend .add-on,.control-group.info .input-append .add-on{color:#3a87ad;background-color:#d9edf7;border-color:#3a87ad}
+input:focus:invalid,textarea:focus:invalid,select:focus:invalid{color:#b94a48;border-color:#ee5f5b}input:focus:invalid:focus,textarea:focus:invalid:focus,select:focus:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}
+.form-actions{padding:19px 20px 20px;margin-top:20px;margin-bottom:20px;background-color:#f5f5f5;border-top:1px solid #e5e5e5;*zoom:1}.form-actions:before,.form-actions:after{display:table;content:"";line-height:0}
+.form-actions:after{clear:both}
+.help-block,.help-inline{color:#262626}
+.help-block{display:block;margin-bottom:10px}
+.help-inline{display:inline-block;*display:inline;*zoom:1;vertical-align:middle;padding-left:5px}
+.input-append,.input-prepend{display:inline-block;margin-bottom:10px;vertical-align:middle;font-size:0;white-space:nowrap}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input,.input-append .dropdown-menu,.input-prepend .dropdown-menu,.input-append .popover,.input-prepend .popover{font-size:13px}
+.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input{position:relative;margin-bottom:0;*margin-left:0;vertical-align:top;border-radius:0 4px 4px 0;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-append input:focus,.input-prepend input:focus,.input-append select:focus,.input-prepend select:focus,.input-append .uneditable-input:focus,.input-prepend .uneditable-input:focus{z-index:2}
+.input-append .add-on,.input-prepend .add-on{display:inline-block;width:auto;height:20px;min-width:16px;padding:4px 5px;font-size:13px;font-weight:normal;line-height:20px;text-align:center;text-shadow:0 1px 0 #fff;background-color:#eee;border:1px solid #ccc}
+.input-append .add-on,.input-prepend .add-on,.input-append .btn,.input-prepend .btn,.input-append .btn-group>.dropdown-toggle,.input-prepend .btn-group>.dropdown-toggle{vertical-align:top;border-radius:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
+.input-append .active,.input-prepend .active{background-color:#a9dba9;border-color:#46a546}
+.input-prepend .add-on,.input-prepend .btn{margin-right:-1px}
+.input-prepend .add-on:first-child,.input-prepend .btn:first-child{border-radius:4px 0 0 4px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}
+.input-append input,.input-append select,.input-append .uneditable-input{border-radius:4px 0 0 4px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.input-append input+.btn-group .btn:last-child,.input-append select+.btn-group .btn:last-child,.input-append .uneditable-input+.btn-group .btn:last-child{border-radius:0 4px 4px 0;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}
+.input-append .add-on,.input-append .btn,.input-append .btn-group{margin-left:-1px}
+.input-append .add-on:last-child,.input-append .btn:last-child,.input-append .btn-group:last-child>.dropdown-toggle{border-radius:0 4px 4px 0;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}
+.input-prepend.input-append input,.input-prepend.input-append select,.input-prepend.input-append .uneditable-input{border-radius:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-prepend.input-append input+.btn-group .btn,.input-prepend.input-append select+.btn-group .btn,.input-prepend.input-append .uneditable-input+.btn-group .btn{border-radius:0 4px 4px 0;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}
+.input-prepend.input-append .add-on:first-child,.input-prepend.input-append .btn:first-child{margin-right:-1px;border-radius:4px 0 0 4px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}
+.input-prepend.input-append .add-on:last-child,.input-prepend.input-append .btn:last-child{margin-left:-1px;border-radius:0 4px 4px 0;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}
+.input-prepend.input-append .btn-group:first-child{margin-left:0}
+input.search-query{padding-right:14px;padding-right:4px \9;padding-left:14px;padding-left:4px \9;margin-bottom:0;border-radius:15px;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}
+.form-search .input-append .search-query,.form-search .input-prepend .search-query{border-radius:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
+.form-search .input-append .search-query{border-radius:14px 0 0 14px;-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}
+.form-search .input-append .btn{border-radius:0 14px 14px 0;-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}
+.form-search .input-prepend .search-query{border-radius:0 14px 14px 0;-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}
+.form-search .input-prepend .btn{border-radius:14px 0 0 14px;-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}
+.form-search input,.form-inline input,.form-horizontal input,.form-search textarea,.form-inline textarea,.form-horizontal textarea,.form-search select,.form-inline select,.form-horizontal select,.form-search .help-inline,.form-inline .help-inline,.form-horizontal .help-inline,.form-search .uneditable-input,.form-inline .uneditable-input,.form-horizontal .uneditable-input,.form-search .input-prepend,.form-inline .input-prepend,.form-horizontal .input-prepend,.form-search .input-append,.form-inline .input-append,.form-horizontal .input-append{display:inline-block;*display:inline;*zoom:1;margin-bottom:0;vertical-align:middle}
+.form-search .hide,.form-inline .hide,.form-horizontal .hide{display:none}
+.form-search label,.form-inline label,.form-search .btn-group,.form-inline .btn-group{display:inline-block}
+.form-search .input-append,.form-inline .input-append,.form-search .input-prepend,.form-inline .input-prepend{margin-bottom:0}
+.form-search .radio,.form-search .checkbox,.form-inline .radio,.form-inline .checkbox{padding-left:0;margin-bottom:0;vertical-align:middle}
+.form-search .radio input[type="radio"],.form-search .checkbox input[type="checkbox"],.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:left;margin-right:3px;margin-left:0}
+.control-group{margin-bottom:10px}
+legend+.control-group{margin-top:20px;-webkit-margin-top-collapse:separate}
+.form-horizontal .control-group{margin-bottom:20px;*zoom:1}.form-horizontal .control-group:before,.form-horizontal .control-group:after{display:table;content:"";line-height:0}
+.form-horizontal .control-group:after{clear:both}
+.form-horizontal .control-label{float:left;width:160px;padding-top:5px;text-align:right}
+.form-horizontal .controls{*display:inline-block;*padding-left:20px;margin-left:180px;*margin-left:0}.form-horizontal .controls:first-child{*padding-left:180px}
+.form-horizontal .help-block{margin-bottom:0}
+.form-horizontal input+.help-block,.form-horizontal select+.help-block,.form-horizontal textarea+.help-block,.form-horizontal .uneditable-input+.help-block,.form-horizontal .input-prepend+.help-block,.form-horizontal .input-append+.help-block{margin-top:10px}
+.form-horizontal .form-actions{padding-left:180px}
+table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0}
+.table{width:100%;margin-bottom:20px}.table th,.table td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}
+.table th{font-weight:bold}
+.table thead th{vertical-align:bottom}
+.table caption+thead tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child th,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child th,.table thead:first-child tr:first-child td{border-top:0}
+.table tbody+tbody{border-top:2px solid #ddd}
+.table .table{background-color:#fff}
+.table-condensed th,.table-condensed td{padding:4px 5px}
+.table-bordered{border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.table-bordered th,.table-bordered td{border-left:1px solid #ddd}
+.table-bordered caption+thead tr:first-child th,.table-bordered caption+tbody tr:first-child th,.table-bordered caption+tbody tr:first-child td,.table-bordered colgroup+thead tr:first-child th,.table-bordered colgroup+tbody tr:first-child th,.table-bordered colgroup+tbody tr:first-child td,.table-bordered thead:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child td{border-top:0}
+.table-bordered thead:first-child tr:first-child>th:first-child,.table-bordered tbody:first-child tr:first-child>td:first-child,.table-bordered tbody:first-child tr:first-child>th:first-child{-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px}
+.table-bordered thead:first-child tr:first-child>th:last-child,.table-bordered tbody:first-child tr:first-child>td:last-child,.table-bordered tbody:first-child tr:first-child>th:last-child{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px}
+.table-bordered thead:last-child tr:last-child>th:first-child,.table-bordered tbody:last-child tr:last-child>td:first-child,.table-bordered tbody:last-child tr:last-child>th:first-child,.table-bordered tfoot:last-child tr:last-child>td:first-child,.table-bordered tfoot:last-child tr:last-child>th:first-child{-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}
+.table-bordered thead:last-child tr:last-child>th:last-child,.table-bordered tbody:last-child tr:last-child>td:last-child,.table-bordered tbody:last-child tr:last-child>th:last-child,.table-bordered tfoot:last-child tr:last-child>td:last-child,.table-bordered tfoot:last-child tr:last-child>th:last-child{-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px}
+.table-bordered tfoot+tbody:last-child tr:last-child td:first-child{-webkit-border-bottom-left-radius:0;-moz-border-radius-bottomleft:0;border-bottom-left-radius:0}
+.table-bordered tfoot+tbody:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:0;-moz-border-radius-bottomright:0;border-bottom-right-radius:0}
+.table-bordered caption+thead tr:first-child th:first-child,.table-bordered caption+tbody tr:first-child td:first-child,.table-bordered colgroup+thead tr:first-child th:first-child,.table-bordered colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px}
+.table-bordered caption+thead tr:first-child th:last-child,.table-bordered caption+tbody tr:first-child td:last-child,.table-bordered colgroup+thead tr:first-child th:last-child,.table-bordered colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px}
+.table-striped tbody>tr:nth-child(odd)>td,.table-striped tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}
+.table-hover tbody tr:hover>td,.table-hover tbody tr:hover>th{background-color:#f5f5f5}
+table td[class*="span"],table th[class*="span"],.row-fluid table td[class*="span"],.row-fluid table th[class*="span"]{display:table-cell;float:none;margin-left:0}
+.table td.span1,.table th.span1{float:none;width:44px;margin-left:0}
+.table td.span2,.table th.span2{float:none;width:124px;margin-left:0}
+.table td.span3,.table th.span3{float:none;width:204px;margin-left:0}
+.table td.span4,.table th.span4{float:none;width:284px;margin-left:0}
+.table td.span5,.table th.span5{float:none;width:364px;margin-left:0}
+.table td.span6,.table th.span6{float:none;width:444px;margin-left:0}
+.table td.span7,.table th.span7{float:none;width:524px;margin-left:0}
+.table td.span8,.table th.span8{float:none;width:604px;margin-left:0}
+.table td.span9,.table th.span9{float:none;width:684px;margin-left:0}
+.table td.span10,.table th.span10{float:none;width:764px;margin-left:0}
+.table td.span11,.table th.span11{float:none;width:844px;margin-left:0}
+.table td.span12,.table th.span12{float:none;width:924px;margin-left:0}
+.table tbody tr.success>td{background-color:#dff0d8}
+.table tbody tr.error>td{background-color:#f2dede}
+.table tbody tr.warning>td{background-color:#fcf8e3}
+.table tbody tr.info>td{background-color:#d9edf7}
+.table-hover tbody tr.success:hover>td{background-color:#d0e9c6}
+.table-hover tbody tr.error:hover>td{background-color:#ebcccc}
+.table-hover tbody tr.warning:hover>td{background-color:#faf2cc}
+.table-hover tbody tr.info:hover>td{background-color:#c4e3f3}
+[class^="icon-"],[class*=" icon-"]{display:inline-block;width:14px;height:14px;*margin-right:.3em;line-height:14px;vertical-align:text-top;background-image:url("../img/glyphicons-halflings.png");background-position:14px 14px;background-repeat:no-repeat;margin-top:1px}
+.icon-white,.nav-pills>.active>a>[class^="icon-"],.nav-pills>.active>a>[class*=" icon-"],.nav-list>.active>a>[class^="icon-"],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse .nav>.active>a>[class^="icon-"],.navbar-inverse .nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:focus>[class^="icon-"],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>li>a:focus>[class*=" icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" icon-"],.dropdown-submenu:hover>a>[class^="icon-"],.dropdown-submenu:focus>a>[class^="icon-"],.dropdown-submenu:hover>a>[class*=" icon-"],.dropdown-submenu:focus>a>[class*=" icon-"]{background-image:url("../img/glyphicons-halflings-white.png")}
+.icon-glass{background-position:0 0}
+.icon-music{background-position:-24px 0}
+.icon-search{background-position:-48px 0}
+.icon-envelope{background-position:-72px 0}
+.icon-heart{background-position:-96px 0}
+.icon-star{background-position:-120px 0}
+.icon-star-empty{background-position:-144px 0}
+.icon-user{background-position:-168px 0}
+.icon-film{background-position:-192px 0}
+.icon-th-large{background-position:-216px 0}
+.icon-th{background-position:-240px 0}
+.icon-th-list{background-position:-264px 0}
+.icon-ok{background-position:-288px 0}
+.icon-remove{background-position:-312px 0}
+.icon-zoom-in{background-position:-336px 0}
+.icon-zoom-out{background-position:-360px 0}
+.icon-off{background-position:-384px 0}
+.icon-signal{background-position:-408px 0}
+.icon-cog{background-position:-432px 0}
+.icon-trash{background-position:-456px 0}
+.icon-home{background-position:0 -24px}
+.icon-file{background-position:-24px -24px}
+.icon-time{background-position:-48px -24px}
+.icon-road{background-position:-72px -24px}
+.icon-download-alt{background-position:-96px -24px}
+.icon-download{background-position:-120px -24px}
+.icon-upload{background-position:-144px -24px}
+.icon-inbox{background-position:-168px -24px}
+.icon-play-circle{background-position:-192px -24px}
+.icon-repeat{background-position:-216px -24px}
+.icon-refresh{background-position:-240px -24px}
+.icon-list-alt{background-position:-264px -24px}
+.icon-lock{background-position:-287px -24px}
+.icon-flag{background-position:-312px -24px}
+.icon-headphones{background-position:-336px -24px}
+.icon-volume-off{background-position:-360px -24px}
+.icon-volume-down{background-position:-384px -24px}
+.icon-volume-up{background-position:-408px -24px}
+.icon-qrcode{background-position:-432px -24px}
+.icon-barcode{background-position:-456px -24px}
+.icon-tag{background-position:0 -48px}
+.icon-tags{background-position:-25px -48px}
+.icon-book{background-position:-48px -48px}
+.icon-bookmark{background-position:-72px -48px}
+.icon-print{background-position:-96px -48px}
+.icon-camera{background-position:-120px -48px}
+.icon-font{background-position:-144px -48px}
+.icon-bold{background-position:-167px -48px}
+.icon-italic{background-position:-192px -48px}
+.icon-text-height{background-position:-216px -48px}
+.icon-text-width{background-position:-240px -48px}
+.icon-align-left{background-position:-264px -48px}
+.icon-align-center{background-position:-288px -48px}
+.icon-align-right{background-position:-312px -48px}
+.icon-align-justify{background-position:-336px -48px}
+.icon-list{background-position:-360px -48px}
+.icon-indent-left{background-position:-384px -48px}
+.icon-indent-right{background-position:-408px -48px}
+.icon-facetime-video{background-position:-432px -48px}
+.icon-picture{background-position:-456px -48px}
+.icon-pencil{background-position:0 -72px}
+.icon-map-marker{background-position:-24px -72px}
+.icon-adjust{background-position:-48px -72px}
+.icon-tint{background-position:-72px -72px}
+.icon-edit{background-position:-96px -72px}
+.icon-share{background-position:-120px -72px}
+.icon-check{background-position:-144px -72px}
+.icon-move{background-position:-168px -72px}
+.icon-step-backward{background-position:-192px -72px}
+.icon-fast-backward{background-position:-216px -72px}
+.icon-backward{background-position:-240px -72px}
+.icon-play{background-position:-264px -72px}
+.icon-pause{background-position:-288px -72px}
+.icon-stop{background-position:-312px -72px}
+.icon-forward{background-position:-336px -72px}
+.icon-fast-forward{background-position:-360px -72px}
+.icon-step-forward{background-position:-384px -72px}
+.icon-eject{background-position:-408px -72px}
+.icon-chevron-left{background-position:-432px -72px}
+.icon-chevron-right{background-position:-456px -72px}
+.icon-plus-sign{background-position:0 -96px}
+.icon-minus-sign{background-position:-24px -96px}
+.icon-remove-sign{background-position:-48px -96px}
+.icon-ok-sign{background-position:-72px -96px}
+.icon-question-sign{background-position:-96px -96px}
+.icon-info-sign{background-position:-120px -96px}
+.icon-screenshot{background-position:-144px -96px}
+.icon-remove-circle{background-position:-168px -96px}
+.icon-ok-circle{background-position:-192px -96px}
+.icon-ban-circle{background-position:-216px -96px}
+.icon-arrow-left{background-position:-240px -96px}
+.icon-arrow-right{background-position:-264px -96px}
+.icon-arrow-up{background-position:-289px -96px}
+.icon-arrow-down{background-position:-312px -96px}
+.icon-share-alt{background-position:-336px -96px}
+.icon-resize-full{background-position:-360px -96px}
+.icon-resize-small{background-position:-384px -96px}
+.icon-plus{background-position:-408px -96px}
+.icon-minus{background-position:-433px -96px}
+.icon-asterisk{background-position:-456px -96px}
+.icon-exclamation-sign{background-position:0 -120px}
+.icon-gift{background-position:-24px -120px}
+.icon-leaf{background-position:-48px -120px}
+.icon-fire{background-position:-72px -120px}
+.icon-eye-open{background-position:-96px -120px}
+.icon-eye-close{background-position:-120px -120px}
+.icon-warning-sign{background-position:-144px -120px}
+.icon-plane{background-position:-168px -120px}
+.icon-calendar{background-position:-192px -120px}
+.icon-random{background-position:-216px -120px;width:16px}
+.icon-comment{background-position:-240px -120px}
+.icon-magnet{background-position:-264px -120px}
+.icon-chevron-up{background-position:-288px -120px}
+.icon-chevron-down{background-position:-313px -119px}
+.icon-retweet{background-position:-336px -120px}
+.icon-shopping-cart{background-position:-360px -120px}
+.icon-folder-close{background-position:-384px -120px;width:16px}
+.icon-folder-open{background-position:-408px -120px;width:16px}
+.icon-resize-vertical{background-position:-432px -119px}
+.icon-resize-horizontal{background-position:-456px -118px}
+.icon-hdd{background-position:0 -144px}
+.icon-bullhorn{background-position:-24px -144px}
+.icon-bell{background-position:-48px -144px}
+.icon-certificate{background-position:-72px -144px}
+.icon-thumbs-up{background-position:-96px -144px}
+.icon-thumbs-down{background-position:-120px -144px}
+.icon-hand-right{background-position:-144px -144px}
+.icon-hand-left{background-position:-168px -144px}
+.icon-hand-up{background-position:-192px -144px}
+.icon-hand-down{background-position:-216px -144px}
+.icon-circle-arrow-right{background-position:-240px -144px}
+.icon-circle-arrow-left{background-position:-264px -144px}
+.icon-circle-arrow-up{background-position:-288px -144px}
+.icon-circle-arrow-down{background-position:-312px -144px}
+.icon-globe{background-position:-336px -144px}
+.icon-wrench{background-position:-360px -144px}
+.icon-tasks{background-position:-384px -144px}
+.icon-filter{background-position:-408px -144px}
+.icon-briefcase{background-position:-432px -144px}
+.icon-fullscreen{background-position:-456px -144px}
+.dropup,.dropdown{position:relative}
+.dropdown-toggle{*margin-bottom:-3px}
+.dropdown-toggle:active,.open .dropdown-toggle{outline:0}
+.caret{display:inline-block;width:0;height:0;vertical-align:top;border-top:4px solid #000;border-right:4px solid transparent;border-left:4px solid transparent;content:""}
+.dropdown .caret{margin-top:8px;margin-left:2px}
+.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);*border-right-width:2px;*border-bottom-width:2px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}
+.dropdown-menu .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}
+.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:20px;color:#333;white-space:nowrap}
+.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus,.dropdown-submenu:hover>a,.dropdown-submenu:focus>a{text-decoration:none;color:#fff;background-color:#0081c2;background-image:-moz-linear-gradient(top, #08c, #0077b3);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#0077b3));background-image:-webkit-linear-gradient(top, #08c, #0077b3);background-image:-o-linear-gradient(top, #08c, #0077b3);background-image:linear-gradient(to bottom, #08c, #0077b3);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0)}
+.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#0081c2;background-image:-moz-linear-gradient(top, #08c, #0077b3);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#0077b3));background-image:-webkit-linear-gradient(top, #08c, #0077b3);background-image:-o-linear-gradient(top, #08c, #0077b3);background-image:linear-gradient(to bottom, #08c, #0077b3);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0)}
+.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#999}
+.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);cursor:default}
+.open{*z-index:1000}.open>.dropdown-menu{display:block}
+.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}
+.pull-right>.dropdown-menu{right:0;left:auto}
+.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:""}
+.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}
+.dropdown-submenu{position:relative}
+.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;border-radius:0 6px 6px 6px;-webkit-border-radius:0 6px 6px 6px;-moz-border-radius:0 6px 6px 6px;border-radius:0 6px 6px 6px}
+.dropdown-submenu:hover>.dropdown-menu{display:block}
+.dropup .dropdown-submenu>.dropdown-menu{top:auto;bottom:0;margin-top:0;margin-bottom:-2px;border-radius:5px 5px 5px 0;-webkit-border-radius:5px 5px 5px 0;-moz-border-radius:5px 5px 5px 0;border-radius:5px 5px 5px 0}
+.dropdown-submenu>a:after{display:block;content:" ";float:right;width:0;height:0;border-color:transparent;border-style:solid;border-width:5px 0 5px 5px;border-left-color:#ccc;margin-top:5px;margin-right:-10px}
+.dropdown-submenu:hover>a:after{border-left-color:#fff}
+.dropdown-submenu.pull-left{float:none}.dropdown-submenu.pull-left>.dropdown-menu{left:-100%;margin-left:10px;border-radius:6px 0 6px 6px;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}
+.dropdown .dropdown-menu .nav-header{padding-left:20px;padding-right:20px}
+.typeahead{z-index:1051;margin-top:2px;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}
+.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}
+.well-large{padding:24px;border-radius:6px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}
+.well-small{padding:9px;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}
+.fade{opacity:0;-webkit-transition:opacity .15s linear;-moz-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}
+.collapse{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;-moz-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease}.collapse.in{height:auto}
+.close{float:right;font-size:20px;font-weight:bold;line-height:20px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}
+button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}
+.btn{display:inline-block;*display:inline;*zoom:1;padding:4px 12px;margin-bottom:0;font-size:13px;line-height:20px;text-align:center;vertical-align:middle;cursor:pointer;color:#333;text-shadow:0 1px 1px rgba(255,255,255,0.75);background-color:#f5f5f5;background-image:-moz-linear-gradient(top, #fff, #e6e6e6);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#e6e6e6));background-image:-webkit-linear-gradient(top, #fff, #e6e6e6);background-image:-o-linear-gradient(top, #fff, #e6e6e6);background-image:linear-gradient(to bottom, #fff, #e6e6e6);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0);border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color:#e6e6e6;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);border:1px solid #ccc;*border:0;border-bottom-color:#b3b3b3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;*margin-left:.3em;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05)}.btn:hover,.btn:focus,.btn:active,.btn.active,.btn.disabled,.btn[disabled]{color:#333;background-color:#e6e6e6;*background-color:#d9d9d9}
+.btn:active,.btn.active{background-color:#ccc \9}
+.btn:first-child{*margin-left:0}
+.btn:hover,.btn:focus{color:#333;text-decoration:none;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}
+.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}
+.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05)}
+.btn.disabled,.btn[disabled]{cursor:default;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}
+.btn-large{padding:11px 19px;font-size:16.25px;border-radius:6px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}
+.btn-large [class^="icon-"],.btn-large [class*=" icon-"]{margin-top:4px}
+.btn-small{padding:2px 10px;font-size:11.049999999999999px;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}
+.btn-small [class^="icon-"],.btn-small [class*=" icon-"]{margin-top:0}
+.btn-mini [class^="icon-"],.btn-mini [class*=" icon-"]{margin-top:-1px}
+.btn-mini{padding:0 6px;font-size:9.75px;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}
+.btn-block{display:block;width:100%;padding-left:0;padding-right:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}
+.btn-block+.btn-block{margin-top:5px}
+input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}
+.btn-primary.active,.btn-warning.active,.btn-danger.active,.btn-success.active,.btn-info.active,.btn-inverse.active{color:rgba(255,255,255,0.75)}
+.btn-primary{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#006dcc;background-image:-moz-linear-gradient(top, #08c, #04c);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#04c));background-image:-webkit-linear-gradient(top, #08c, #04c);background-image:-o-linear-gradient(top, #08c, #04c);background-image:linear-gradient(to bottom, #08c, #04c);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0044cc', GradientType=0);border-color:#04c #04c #002a80;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color:#04c;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false)}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.btn-primary.disabled,.btn-primary[disabled]{color:#fff;background-color:#04c;*background-color:#003bb3}
+.btn-primary:active,.btn-primary.active{background-color:#039 \9}
+.btn-warning{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#faa732;background-image:-moz-linear-gradient(top, #fbb450, #f89406);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));background-image:-webkit-linear-gradient(top, #fbb450, #f89406);background-image:-o-linear-gradient(top, #fbb450, #f89406);background-image:linear-gradient(to bottom, #fbb450, #f89406);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450', endColorstr='#fff89406', GradientType=0);border-color:#f89406 #f89406 #ad6704;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color:#f89406;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false)}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.btn-warning.disabled,.btn-warning[disabled]{color:#fff;background-color:#f89406;*background-color:#df8505}
+.btn-warning:active,.btn-warning.active{background-color:#c67605 \9}
+.btn-danger{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#da4f49;background-image:-moz-linear-gradient(top, #ee5f5b, #bd362f);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f));background-image:-webkit-linear-gradient(top, #ee5f5b, #bd362f);background-image:-o-linear-gradient(top, #ee5f5b, #bd362f);background-image:linear-gradient(to bottom, #ee5f5b, #bd362f);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffbd362f', GradientType=0);border-color:#bd362f #bd362f #802420;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color:#bd362f;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false)}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.btn-danger.disabled,.btn-danger[disabled]{color:#fff;background-color:#bd362f;*background-color:#a9302a}
+.btn-danger:active,.btn-danger.active{background-color:#942a25 \9}
+.btn-success{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#5bb75b;background-image:-moz-linear-gradient(top, #62c462, #51a351);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351));background-image:-webkit-linear-gradient(top, #62c462, #51a351);background-image:-o-linear-gradient(top, #62c462, #51a351);background-image:linear-gradient(to bottom, #62c462, #51a351);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff51a351', GradientType=0);border-color:#51a351 #51a351 #387038;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color:#51a351;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false)}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.btn-success.disabled,.btn-success[disabled]{color:#fff;background-color:#51a351;*background-color:#499249}
+.btn-success:active,.btn-success.active{background-color:#408140 \9}
+.btn-info{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#49afcd;background-image:-moz-linear-gradient(top, #5bc0de, #2f96b4);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#2f96b4));background-image:-webkit-linear-gradient(top, #5bc0de, #2f96b4);background-image:-o-linear-gradient(top, #5bc0de, #2f96b4);background-image:linear-gradient(to bottom, #5bc0de, #2f96b4);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2f96b4', GradientType=0);border-color:#2f96b4 #2f96b4 #1f6377;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color:#2f96b4;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false)}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.btn-info.disabled,.btn-info[disabled]{color:#fff;background-color:#2f96b4;*background-color:#2a85a0}
+.btn-info:active,.btn-info.active{background-color:#24748c \9}
+.btn-inverse{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#363636;background-image:-moz-linear-gradient(top, #444, #222);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#444), to(#222));background-image:-webkit-linear-gradient(top, #444, #222);background-image:-o-linear-gradient(top, #444, #222);background-image:linear-gradient(to bottom, #444, #222);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff444444', endColorstr='#ff222222', GradientType=0);border-color:#222 #222 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color:#222;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false)}.btn-inverse:hover,.btn-inverse:focus,.btn-inverse:active,.btn-inverse.active,.btn-inverse.disabled,.btn-inverse[disabled]{color:#fff;background-color:#222;*background-color:#151515}
+.btn-inverse:active,.btn-inverse.active{background-color:#080808 \9}
+button.btn,input[type="submit"].btn{*padding-top:3px;*padding-bottom:3px}button.btn::-moz-focus-inner,input[type="submit"].btn::-moz-focus-inner{padding:0;border:0}
+button.btn.btn-large,input[type="submit"].btn.btn-large{*padding-top:7px;*padding-bottom:7px}
+button.btn.btn-small,input[type="submit"].btn.btn-small{*padding-top:3px;*padding-bottom:3px}
+button.btn.btn-mini,input[type="submit"].btn.btn-mini{*padding-top:1px;*padding-bottom:1px}
+.btn-link,.btn-link:active,.btn-link[disabled]{background-color:transparent;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}
+.btn-link{border-color:transparent;cursor:pointer;color:#08c;border-radius:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
+.btn-link:hover,.btn-link:focus{color:#005580;text-decoration:underline;background-color:transparent}
+.btn-link[disabled]:hover,.btn-link[disabled]:focus{color:#333;text-decoration:none}
+.btn-group{position:relative;display:inline-block;*display:inline;*zoom:1;font-size:0;vertical-align:middle;white-space:nowrap;*margin-left:.3em}.btn-group:first-child{*margin-left:0}
+.btn-group+.btn-group{margin-left:5px}
+.btn-toolbar{font-size:0;margin-top:10px;margin-bottom:10px}.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group{margin-left:5px}
+.btn-group>.btn{position:relative;border-radius:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
+.btn-group>.btn+.btn{margin-left:-1px}
+.btn-group>.btn,.btn-group>.dropdown-menu,.btn-group>.popover{font-size:13px}
+.btn-group>.btn-mini{font-size:9.75px}
+.btn-group>.btn-small{font-size:11.049999999999999px}
+.btn-group>.btn-large{font-size:16.25px}
+.btn-group>.btn:first-child{margin-left:0;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}
+.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px}
+.btn-group>.btn.large:first-child{margin-left:0;-webkit-border-top-left-radius:6px;-moz-border-radius-topleft:6px;border-top-left-radius:6px;-webkit-border-bottom-left-radius:6px;-moz-border-radius-bottomleft:6px;border-bottom-left-radius:6px}
+.btn-group>.btn.large:last-child,.btn-group>.large.dropdown-toggle{-webkit-border-top-right-radius:6px;-moz-border-radius-topright:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;-moz-border-radius-bottomright:6px;border-bottom-right-radius:6px}
+.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active{z-index:2}
+.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}
+.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px;-webkit-box-shadow:inset 1px 0 0 rgba(255,255,255,.125), inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,.125), inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);box-shadow:inset 1px 0 0 rgba(255,255,255,.125), inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);*padding-top:5px;*padding-bottom:5px}
+.btn-group>.btn-mini+.dropdown-toggle{padding-left:5px;padding-right:5px;*padding-top:2px;*padding-bottom:2px}
+.btn-group>.btn-small+.dropdown-toggle{*padding-top:5px;*padding-bottom:4px}
+.btn-group>.btn-large+.dropdown-toggle{padding-left:12px;padding-right:12px;*padding-top:7px;*padding-bottom:7px}
+.btn-group.open .dropdown-toggle{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05)}
+.btn-group.open .btn.dropdown-toggle{background-color:#e6e6e6}
+.btn-group.open .btn-primary.dropdown-toggle{background-color:#04c}
+.btn-group.open .btn-warning.dropdown-toggle{background-color:#f89406}
+.btn-group.open .btn-danger.dropdown-toggle{background-color:#bd362f}
+.btn-group.open .btn-success.dropdown-toggle{background-color:#51a351}
+.btn-group.open .btn-info.dropdown-toggle{background-color:#2f96b4}
+.btn-group.open .btn-inverse.dropdown-toggle{background-color:#222}
+.btn .caret{margin-top:8px;margin-left:0}
+.btn-large .caret{margin-top:6px}
+.btn-large .caret{border-left-width:5px;border-right-width:5px;border-top-width:5px}
+.btn-mini .caret,.btn-small .caret{margin-top:8px}
+.dropup .btn-large .caret{border-bottom-width:5px}
+.btn-primary .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret,.btn-success .caret,.btn-inverse .caret{border-top-color:#fff;border-bottom-color:#fff}
+.btn-group-vertical{display:inline-block;*display:inline;*zoom:1}
+.btn-group-vertical>.btn{display:block;float:none;max-width:100%;border-radius:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
+.btn-group-vertical>.btn+.btn{margin-left:0;margin-top:-1px}
+.btn-group-vertical>.btn:first-child{border-radius:4px 4px 0 0;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}
+.btn-group-vertical>.btn:last-child{border-radius:0 0 4px 4px;-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}
+.btn-group-vertical>.btn-large:first-child{border-radius:6px 6px 0 0;-webkit-border-radius:6px 6px 0 0;-moz-border-radius:6px 6px 0 0;border-radius:6px 6px 0 0}
+.btn-group-vertical>.btn-large:last-child{border-radius:0 0 6px 6px;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}
+.alert{padding:8px 35px 8px 14px;margin-bottom:20px;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}
+.alert,.alert h4{color:#c09853}
+.alert h4{margin:0}
+.alert .close{position:relative;top:-2px;right:-21px;line-height:20px}
+.alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#468847}
+.alert-success h4{color:#468847}
+.alert-danger,.alert-error{background-color:#f2dede;border-color:#eed3d7;color:#b94a48}
+.alert-danger h4,.alert-error h4{color:#b94a48}
+.alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#3a87ad}
+.alert-info h4{color:#3a87ad}
+.alert-block{padding-top:14px;padding-bottom:14px}
+.alert-block>p,.alert-block>ul{margin-bottom:0}
+.alert-block p+p{margin-top:5px}
+.nav{margin-left:0;margin-bottom:20px;list-style:none}
+.nav>li>a{display:block}
+.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}
+.nav>li>a>img{max-width:none}
+.nav>.pull-right{float:right}
+.nav-header{display:block;padding:3px 15px;font-size:11px;font-weight:bold;line-height:20px;color:#999;text-shadow:0 1px 0 rgba(255,255,255,0.5);text-transform:uppercase}
+.nav li+.nav-header{margin-top:9px}
+.nav-list{padding-left:15px;padding-right:15px;margin-bottom:0}
+.nav-list>li>a,.nav-list .nav-header{margin-left:-15px;margin-right:-15px;text-shadow:0 1px 0 rgba(255,255,255,0.5)}
+.nav-list>li>a{padding:3px 15px}
+.nav-list>.active>a,.nav-list>.active>a:hover,.nav-list>.active>a:focus{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.2);background-color:#08c}
+.nav-list [class^="icon-"],.nav-list [class*=" icon-"]{margin-right:2px}
+.nav-list .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}
+.nav-tabs,.nav-pills{*zoom:1}.nav-tabs:before,.nav-pills:before,.nav-tabs:after,.nav-pills:after{display:table;content:"";line-height:0}
+.nav-tabs:after,.nav-pills:after{clear:both}
+.nav-tabs>li,.nav-pills>li{float:left}
+.nav-tabs>li>a,.nav-pills>li>a{padding-right:12px;padding-left:12px;margin-right:2px;line-height:14px}
+.nav-tabs{border-bottom:1px solid #ddd}
+.nav-tabs>li{margin-bottom:-1px}
+.nav-tabs>li>a{padding-top:8px;padding-bottom:8px;line-height:20px;border:1px solid transparent;border-radius:4px 4px 0 0;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover,.nav-tabs>li>a:focus{border-color:#eee #eee #ddd}
+.nav-tabs>.active>a,.nav-tabs>.active>a:hover,.nav-tabs>.active>a:focus{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}
+.nav-pills>li>a{padding-top:8px;padding-bottom:8px;margin-top:2px;margin-bottom:2px;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}
+.nav-pills>.active>a,.nav-pills>.active>a:hover,.nav-pills>.active>a:focus{color:#fff;background-color:#08c}
+.nav-stacked>li{float:none}
+.nav-stacked>li>a{margin-right:0}
+.nav-tabs.nav-stacked{border-bottom:0}
+.nav-tabs.nav-stacked>li>a{border:1px solid #ddd;border-radius:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
+.nav-tabs.nav-stacked>li:first-child>a{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px}
+.nav-tabs.nav-stacked>li:last-child>a{-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}
+.nav-tabs.nav-stacked>li>a:hover,.nav-tabs.nav-stacked>li>a:focus{border-color:#ddd;z-index:2}
+.nav-pills.nav-stacked>li>a{margin-bottom:3px}
+.nav-pills.nav-stacked>li:last-child>a{margin-bottom:1px}
+.nav-tabs .dropdown-menu{border-radius:0 0 6px 6px;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}
+.nav-pills .dropdown-menu{border-radius:6px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}
+.nav .dropdown-toggle .caret{border-top-color:#08c;border-bottom-color:#08c;margin-top:6px}
+.nav .dropdown-toggle:hover .caret,.nav .dropdown-toggle:focus .caret{border-top-color:#005580;border-bottom-color:#005580}
+.nav-tabs .dropdown-toggle .caret{margin-top:8px}
+.nav .active .dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}
+.nav-tabs .active .dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}
+.nav>.dropdown.active>a:hover,.nav>.dropdown.active>a:focus{cursor:pointer}
+.nav-tabs .open .dropdown-toggle,.nav-pills .open .dropdown-toggle,.nav>li.dropdown.open.active>a:hover,.nav>li.dropdown.open.active>a:focus{color:#fff;background-color:#999;border-color:#999}
+.nav li.dropdown.open .caret,.nav li.dropdown.open.active .caret,.nav li.dropdown.open a:hover .caret,.nav li.dropdown.open a:focus .caret{border-top-color:#fff;border-bottom-color:#fff;opacity:1;filter:alpha(opacity=100)}
+.tabs-stacked .open>a:hover,.tabs-stacked .open>a:focus{border-color:#999}
+.tabbable{*zoom:1}.tabbable:before,.tabbable:after{display:table;content:"";line-height:0}
+.tabbable:after{clear:both}
+.tab-content{overflow:auto}
+.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}
+.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}
+.tab-content>.active,.pill-content>.active{display:block}
+.tabs-below>.nav-tabs{border-top:1px solid #ddd}
+.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}
+.tabs-below>.nav-tabs>li>a{border-radius:0 0 4px 4px;-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.tabs-below>.nav-tabs>li>a:hover,.tabs-below>.nav-tabs>li>a:focus{border-bottom-color:transparent;border-top-color:#ddd}
+.tabs-below>.nav-tabs>.active>a,.tabs-below>.nav-tabs>.active>a:hover,.tabs-below>.nav-tabs>.active>a:focus{border-color:transparent #ddd #ddd #ddd}
+.tabs-left>.nav-tabs>li,.tabs-right>.nav-tabs>li{float:none}
+.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a{min-width:74px;margin-right:0;margin-bottom:3px}
+.tabs-left>.nav-tabs{float:left;margin-right:19px;border-right:1px solid #ddd}
+.tabs-left>.nav-tabs>li>a{margin-right:-1px;border-radius:4px 0 0 4px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}
+.tabs-left>.nav-tabs>li>a:hover,.tabs-left>.nav-tabs>li>a:focus{border-color:#eee #ddd #eee #eee}
+.tabs-left>.nav-tabs .active>a,.tabs-left>.nav-tabs .active>a:hover,.tabs-left>.nav-tabs .active>a:focus{border-color:#ddd transparent #ddd #ddd;*border-right-color:#fff}
+.tabs-right>.nav-tabs{float:right;margin-left:19px;border-left:1px solid #ddd}
+.tabs-right>.nav-tabs>li>a{margin-left:-1px;border-radius:0 4px 4px 0;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}
+.tabs-right>.nav-tabs>li>a:hover,.tabs-right>.nav-tabs>li>a:focus{border-color:#eee #eee #eee #ddd}
+.tabs-right>.nav-tabs .active>a,.tabs-right>.nav-tabs .active>a:hover,.tabs-right>.nav-tabs .active>a:focus{border-color:#ddd #ddd #ddd transparent;*border-left-color:#fff}
+.nav>.disabled>a{color:#999}
+.nav>.disabled>a:hover,.nav>.disabled>a:focus{text-decoration:none;background-color:transparent;cursor:default}
+.navbar{overflow:visible;margin-bottom:20px;*position:relative;*z-index:2}
+.navbar-inner{min-height:36px;padding-left:20px;padding-right:20px;background-color:#fafafa;background-image:-moz-linear-gradient(top, #fff, #f2f2f2);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#f2f2f2));background-image:-webkit-linear-gradient(top, #fff, #f2f2f2);background-image:-o-linear-gradient(top, #fff, #f2f2f2);background-image:linear-gradient(to bottom, #fff, #f2f2f2);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff2f2f2', GradientType=0);border:1px solid #d4d4d4;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 1px 4px rgba(0,0,0,0.065);-moz-box-shadow:0 1px 4px rgba(0,0,0,0.065);box-shadow:0 1px 4px rgba(0,0,0,0.065);*zoom:1}.navbar-inner:before,.navbar-inner:after{display:table;content:"";line-height:0}
+.navbar-inner:after{clear:both}
+.navbar .container{width:auto}
+.nav-collapse.collapse{height:auto;overflow:visible}
+.navbar .brand{float:left;display:block;padding:8px 20px 8px;margin-left:-20px;font-size:20px;font-weight:200;color:#777;text-shadow:0 1px 0 #fff}.navbar .brand:hover,.navbar .brand:focus{text-decoration:none}
+.navbar-text{margin-bottom:0;line-height:36px;color:#777}
+.navbar-link{color:#777}.navbar-link:hover,.navbar-link:focus{color:#333}
+.navbar .divider-vertical{height:36px;margin:0 9px;border-left:1px solid #f2f2f2;border-right:1px solid #fff}
+.navbar .btn,.navbar .btn-group{margin-top:3px}
+.navbar .btn-group .btn,.navbar .input-prepend .btn,.navbar .input-append .btn,.navbar .input-prepend .btn-group,.navbar .input-append .btn-group{margin-top:0}
+.navbar-form{margin-bottom:0;*zoom:1}.navbar-form:before,.navbar-form:after{display:table;content:"";line-height:0}
+.navbar-form:after{clear:both}
+.navbar-form input,.navbar-form select,.navbar-form .radio,.navbar-form .checkbox{margin-top:3px}
+.navbar-form input,.navbar-form select,.navbar-form .btn{display:inline-block;margin-bottom:0}
+.navbar-form input[type="image"],.navbar-form input[type="checkbox"],.navbar-form input[type="radio"]{margin-top:3px}
+.navbar-form .input-append,.navbar-form .input-prepend{margin-top:5px;white-space:nowrap}.navbar-form .input-append input,.navbar-form .input-prepend input{margin-top:0}
+.navbar-search{position:relative;float:left;margin-top:3px;margin-bottom:0}.navbar-search .search-query{margin-bottom:0;padding:4px 14px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:normal;line-height:1;border-radius:15px;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}
+.navbar-static-top{position:static;margin-bottom:0}.navbar-static-top .navbar-inner{border-radius:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
+.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030;margin-bottom:0}
+.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{border-width:0 0 1px}
+.navbar-fixed-bottom .navbar-inner{border-width:1px 0 0}
+.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding-left:0;padding-right:0;border-radius:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
+.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}
+.navbar-fixed-top{top:0}
+.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{-webkit-box-shadow:0 1px 10px rgba(0,0,0,.1);-moz-box-shadow:0 1px 10px rgba(0,0,0,.1);box-shadow:0 1px 10px rgba(0,0,0,.1)}
+.navbar-fixed-bottom{bottom:0}.navbar-fixed-bottom .navbar-inner{-webkit-box-shadow:0 -1px 10px rgba(0,0,0,.1);-moz-box-shadow:0 -1px 10px rgba(0,0,0,.1);box-shadow:0 -1px 10px rgba(0,0,0,.1)}
+.navbar .nav{position:relative;left:0;display:block;float:left;margin:0 10px 0 0}
+.navbar .nav.pull-right{float:right;margin-right:0}
+.navbar .nav>li{float:left}
+.navbar .nav>li>a{float:none;padding:8px 15px 8px;color:#777;text-decoration:none;text-shadow:0 1px 0 #fff}
+.navbar .nav .dropdown-toggle .caret{margin-top:8px}
+.navbar .nav>li>a:focus,.navbar .nav>li>a:hover{background-color:transparent;color:#333;text-decoration:none}
+.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{color:#555;text-decoration:none;background-color:#e5e5e5;-webkit-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);-moz-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);box-shadow:inset 0 3px 8px rgba(0,0,0,0.125)}
+.navbar .btn-navbar{display:none;float:right;padding:7px 10px;margin-left:5px;margin-right:5px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#ededed;background-image:-moz-linear-gradient(top, #f2f2f2, #e5e5e5);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#f2f2f2), to(#e5e5e5));background-image:-webkit-linear-gradient(top, #f2f2f2, #e5e5e5);background-image:-o-linear-gradient(top, #f2f2f2, #e5e5e5);background-image:linear-gradient(to bottom, #f2f2f2, #e5e5e5);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2f2f2', endColorstr='#ffe5e5e5', GradientType=0);border-color:#e5e5e5 #e5e5e5 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color:#e5e5e5;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.075);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.075)}.navbar .btn-navbar:hover,.navbar .btn-navbar:focus,.navbar .btn-navbar:active,.navbar .btn-navbar.active,.navbar .btn-navbar.disabled,.navbar .btn-navbar[disabled]{color:#fff;background-color:#e5e5e5;*background-color:#d9d9d9}
+.navbar .btn-navbar:active,.navbar .btn-navbar.active{background-color:#ccc \9}
+.navbar .btn-navbar .icon-bar{display:block;width:18px;height:2px;background-color:#f5f5f5;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,0.25);-moz-box-shadow:0 1px 0 rgba(0,0,0,0.25);box-shadow:0 1px 0 rgba(0,0,0,0.25)}
+.btn-navbar .icon-bar+.icon-bar{margin-top:3px}
+.navbar .nav>li>.dropdown-menu:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-bottom-color:rgba(0,0,0,0.2);position:absolute;top:-7px;left:9px}
+.navbar .nav>li>.dropdown-menu:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;position:absolute;top:-6px;left:10px}
+.navbar-fixed-bottom .nav>li>.dropdown-menu:before{border-top:7px solid #ccc;border-top-color:rgba(0,0,0,0.2);border-bottom:0;bottom:-7px;top:auto}
+.navbar-fixed-bottom .nav>li>.dropdown-menu:after{border-top:6px solid #fff;border-bottom:0;bottom:-6px;top:auto}
+.navbar .nav li.dropdown>a:hover .caret,.navbar .nav li.dropdown>a:focus .caret{border-top-color:#333;border-bottom-color:#333}
+.navbar .nav li.dropdown.open>.dropdown-toggle,.navbar .nav li.dropdown.active>.dropdown-toggle,.navbar .nav li.dropdown.open.active>.dropdown-toggle{background-color:#e5e5e5;color:#555}
+.navbar .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#777;border-bottom-color:#777}
+.navbar .nav li.dropdown.open>.dropdown-toggle .caret,.navbar .nav li.dropdown.active>.dropdown-toggle .caret,.navbar .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}
+.navbar .pull-right>li>.dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right{left:auto;right:0}.navbar .pull-right>li>.dropdown-menu:before,.navbar .nav>li>.dropdown-menu.pull-right:before{left:auto;right:12px}
+.navbar .pull-right>li>.dropdown-menu:after,.navbar .nav>li>.dropdown-menu.pull-right:after{left:auto;right:13px}
+.navbar .pull-right>li>.dropdown-menu .dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right .dropdown-menu{left:auto;right:100%;margin-left:0;margin-right:-1px;border-radius:6px 0 6px 6px;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}
+.navbar-inverse .navbar-inner{background-color:#1b1b1b;background-image:-moz-linear-gradient(top, #222, #111);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#222), to(#111));background-image:-webkit-linear-gradient(top, #222, #111);background-image:-o-linear-gradient(top, #222, #111);background-image:linear-gradient(to bottom, #222, #111);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222', endColorstr='#ff111111', GradientType=0);border-color:#252525}
+.navbar-inverse .brand,.navbar-inverse .nav>li>a{color:#999;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.navbar-inverse .brand:hover,.navbar-inverse .nav>li>a:hover,.navbar-inverse .brand:focus,.navbar-inverse .nav>li>a:focus{color:#fff}
+.navbar-inverse .brand{color:#999}
+.navbar-inverse .navbar-text{color:#999}
+.navbar-inverse .nav>li>a:focus,.navbar-inverse .nav>li>a:hover{background-color:transparent;color:#fff}
+.navbar-inverse .nav .active>a,.navbar-inverse .nav .active>a:hover,.navbar-inverse .nav .active>a:focus{color:#fff;background-color:#111}
+.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover,.navbar-inverse .navbar-link:focus{color:#fff}
+.navbar-inverse .divider-vertical{border-left-color:#111;border-right-color:#222}
+.navbar-inverse .nav li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle{background-color:#111;color:#fff}
+.navbar-inverse .nav li.dropdown>a:hover .caret,.navbar-inverse .nav li.dropdown>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}
+.navbar-inverse .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#999;border-bottom-color:#999}
+.navbar-inverse .nav li.dropdown.open>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}
+.navbar-inverse .navbar-search .search-query{color:#fff;background-color:#515151;border-color:#111;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1), 0 1px 0 rgba(255,255,255,.15);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.1), 0 1px 0 rgba(255,255,255,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.1), 0 1px 0 rgba(255,255,255,.15);-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.navbar-inverse .navbar-search .search-query:-moz-placeholder{color:#ccc}
+.navbar-inverse .navbar-search .search-query:-ms-input-placeholder{color:#ccc}
+.navbar-inverse .navbar-search .search-query::-webkit-input-placeholder{color:#ccc}
+.navbar-inverse .navbar-search .search-query:focus,.navbar-inverse .navbar-search .search-query.focused{padding:5px 15px;color:#333;text-shadow:0 1px 0 #fff;background-color:#fff;border:0;-webkit-box-shadow:0 0 3px rgba(0,0,0,0.15);-moz-box-shadow:0 0 3px rgba(0,0,0,0.15);box-shadow:0 0 3px rgba(0,0,0,0.15);outline:0}
+.navbar-inverse .btn-navbar{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e0e0e;background-image:-moz-linear-gradient(top, #151515, #040404);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#151515), to(#040404));background-image:-webkit-linear-gradient(top, #151515, #040404);background-image:-o-linear-gradient(top, #151515, #040404);background-image:linear-gradient(to bottom, #151515, #040404);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff151515', endColorstr='#ff040404', GradientType=0);border-color:#040404 #040404 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color:#040404;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false)}.navbar-inverse .btn-navbar:hover,.navbar-inverse .btn-navbar:focus,.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active,.navbar-inverse .btn-navbar.disabled,.navbar-inverse .btn-navbar[disabled]{color:#fff;background-color:#040404;*background-color:#000}
+.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active{background-color:#000 \9}
+.breadcrumb{padding:8px 15px;margin:0 0 20px;list-style:none;background-color:#f5f5f5;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.breadcrumb>li{display:inline-block;*display:inline;*zoom:1;text-shadow:0 1px 0 #fff}.breadcrumb>li>.divider{padding:0 5px;color:#ccc}
+.breadcrumb>.active{color:#999}
+.pagination{margin:20px 0}
+.pagination ul{display:inline-block;*display:inline;*zoom:1;margin-left:0;margin-bottom:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:0 1px 2px rgba(0,0,0,0.05);box-shadow:0 1px 2px rgba(0,0,0,0.05)}
+.pagination ul>li{display:inline}
+.pagination ul>li>a,.pagination ul>li>span{float:left;padding:4px 12px;line-height:20px;text-decoration:none;background-color:#fff;border:1px solid #ddd;border-left-width:0}
+.pagination ul>li>a:hover,.pagination ul>li>a:focus,.pagination ul>.active>a,.pagination ul>.active>span{background-color:#f5f5f5}
+.pagination ul>.active>a,.pagination ul>.active>span{color:#999;cursor:default}
+.pagination ul>.disabled>span,.pagination ul>.disabled>a,.pagination ul>.disabled>a:hover,.pagination ul>.disabled>a:focus{color:#999;background-color:transparent;cursor:default}
+.pagination ul>li:first-child>a,.pagination ul>li:first-child>span{border-left-width:1px;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}
+.pagination ul>li:last-child>a,.pagination ul>li:last-child>span{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px}
+.pagination-centered{text-align:center}
+.pagination-right{text-align:right}
+.pagination-large ul>li>a,.pagination-large ul>li>span{padding:11px 19px;font-size:16.25px}
+.pagination-large ul>li:first-child>a,.pagination-large ul>li:first-child>span{-webkit-border-top-left-radius:6px;-moz-border-radius-topleft:6px;border-top-left-radius:6px;-webkit-border-bottom-left-radius:6px;-moz-border-radius-bottomleft:6px;border-bottom-left-radius:6px}
+.pagination-large ul>li:last-child>a,.pagination-large ul>li:last-child>span{-webkit-border-top-right-radius:6px;-moz-border-radius-topright:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;-moz-border-radius-bottomright:6px;border-bottom-right-radius:6px}
+.pagination-mini ul>li:first-child>a,.pagination-small ul>li:first-child>a,.pagination-mini ul>li:first-child>span,.pagination-small ul>li:first-child>span{-webkit-border-top-left-radius:3px;-moz-border-radius-topleft:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;-moz-border-radius-bottomleft:3px;border-bottom-left-radius:3px}
+.pagination-mini ul>li:last-child>a,.pagination-small ul>li:last-child>a,.pagination-mini ul>li:last-child>span,.pagination-small ul>li:last-child>span{-webkit-border-top-right-radius:3px;-moz-border-radius-topright:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;-moz-border-radius-bottomright:3px;border-bottom-right-radius:3px}
+.pagination-small ul>li>a,.pagination-small ul>li>span{padding:2px 10px;font-size:11.049999999999999px}
+.pagination-mini ul>li>a,.pagination-mini ul>li>span{padding:0 6px;font-size:9.75px}
+.pager{margin:20px 0;list-style:none;text-align:center;*zoom:1}.pager:before,.pager:after{display:table;content:"";line-height:0}
+.pager:after{clear:both}
+.pager li{display:inline}
+.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}
+.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#f5f5f5}
+.pager .next>a,.pager .next>span{float:right}
+.pager .previous>a,.pager .previous>span{float:left}
+.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#999;background-color:#fff;cursor:default}
+.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}
+.modal-backdrop,.modal-backdrop.fade.in{opacity:.8;filter:alpha(opacity=80)}
+.modal{position:fixed;top:10%;left:50%;z-index:1050;width:560px;margin-left:-280px;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.3);*border:1px solid #999;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 3px 7px rgba(0,0,0,0.3);-moz-box-shadow:0 3px 7px rgba(0,0,0,0.3);box-shadow:0 3px 7px rgba(0,0,0,0.3);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box;outline:none}.modal.fade{-webkit-transition:opacity .3s linear, top .3s ease-out;-moz-transition:opacity .3s linear, top .3s ease-out;-o-transition:opacity .3s linear, top .3s ease-out;transition:opacity .3s linear, top .3s ease-out;top:-25%}
+.modal.fade.in{top:10%}
+.modal-header{padding:9px 15px;border-bottom:1px solid #eee}.modal-header .close{margin-top:2px}
+.modal-header h3{margin:0;line-height:30px}
+.modal-body{position:relative;overflow-y:auto;max-height:400px;padding:15px}
+.modal-form{margin-bottom:0}
+.modal-footer{padding:14px 15px 15px;margin-bottom:0;text-align:right;background-color:#f5f5f5;border-top:1px solid #ddd;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;-webkit-box-shadow:inset 0 1px 0 #fff;-moz-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;*zoom:1}.modal-footer:before,.modal-footer:after{display:table;content:"";line-height:0}
+.modal-footer:after{clear:both}
+.modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}
+.modal-footer .btn-group .btn+.btn{margin-left:-1px}
+.modal-footer .btn-block+.btn-block{margin-left:0}
+.tooltip{position:absolute;z-index:1030;display:block;visibility:visible;font-size:11px;line-height:1.4;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.8;filter:alpha(opacity=80)}
+.tooltip.top{margin-top:-3px;padding:5px 0}
+.tooltip.right{margin-left:3px;padding:0 5px}
+.tooltip.bottom{margin-top:3px;padding:5px 0}
+.tooltip.left{margin-left:-3px;padding:0 5px}
+.tooltip-inner{max-width:200px;padding:8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}
+.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}
+.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}
+.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}
+.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}
+.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}
+.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;background-color:#fff;-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);white-space:normal}.popover.top{margin-top:-10px}
+.popover.right{margin-left:10px}
+.popover.bottom{margin-top:10px}
+.popover.left{margin-left:-10px}
+.popover-title{margin:0;padding:8px 14px;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.popover-title:empty{display:none}
+.popover-content{padding:9px 14px}
+.popover .arrow,.popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}
+.popover .arrow{border-width:11px}
+.popover .arrow:after{border-width:10px;content:""}
+.popover.top .arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);bottom:-11px}.popover.top .arrow:after{bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fff}
+.popover.right .arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,0.25)}.popover.right .arrow:after{left:1px;bottom:-10px;border-left-width:0;border-right-color:#fff}
+.popover.bottom .arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);top:-11px}.popover.bottom .arrow:after{top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fff}
+.popover.left .arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,0.25)}.popover.left .arrow:after{right:1px;border-right-width:0;border-left-color:#fff;bottom:-10px}
+.thumbnails{margin-left:-20px;list-style:none;*zoom:1}.thumbnails:before,.thumbnails:after{display:table;content:"";line-height:0}
+.thumbnails:after{clear:both}
+.row-fluid .thumbnails{margin-left:0}
+.thumbnails>li{float:left;margin-bottom:20px;margin-left:20px}
+.thumbnail{display:block;padding:4px;line-height:20px;border:1px solid #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.055);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.055);box-shadow:0 1px 3px rgba(0,0,0,0.055);-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}
+a.thumbnail:hover,a.thumbnail:focus{border-color:#08c;-webkit-box-shadow:0 1px 4px rgba(0,105,214,0.25);-moz-box-shadow:0 1px 4px rgba(0,105,214,0.25);box-shadow:0 1px 4px rgba(0,105,214,0.25)}
+.thumbnail>img{display:block;max-width:100%;margin-left:auto;margin-right:auto}
+.thumbnail .caption{padding:9px;color:#555}
+.media,.media-body{overflow:hidden;*overflow:visible;zoom:1}
+.media,.media .media{margin-top:15px}
+.media:first-child{margin-top:0}
+.media-object{display:block}
+.media-heading{margin:0 0 5px}
+.media>.pull-left{margin-right:10px}
+.media>.pull-right{margin-left:10px}
+.media-list{margin-left:0;list-style:none}
+.label,.badge{display:inline-block;padding:2px 4px;font-size:10.998px;font-weight:bold;line-height:14px;color:#fff;vertical-align:baseline;white-space:nowrap;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#999}
+.label{border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}
+.badge{padding-left:9px;padding-right:9px;border-radius:9px;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}
+.label:empty,.badge:empty{display:none}
+a.label:hover,a.label:focus,a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}
+.label-important,.badge-important{background-color:#b94a48}
+.label-important[href],.badge-important[href]{background-color:#953b39}
+.label-warning,.badge-warning{background-color:#f89406}
+.label-warning[href],.badge-warning[href]{background-color:#c67605}
+.label-success,.badge-success{background-color:#468847}
+.label-success[href],.badge-success[href]{background-color:#356635}
+.label-info,.badge-info{background-color:#3a87ad}
+.label-info[href],.badge-info[href]{background-color:#2d6987}
+.label-inverse,.badge-inverse{background-color:#333}
+.label-inverse[href],.badge-inverse[href]{background-color:#1a1a1a}
+.btn .label,.btn .badge{position:relative;top:-1px}
+.btn-mini .label,.btn-mini .badge{top:0}
+@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0} to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0} to{background-position:0 0}}@-ms-keyframes progress-bar-stripes{from{background-position:40px 0} to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0} to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0} to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f7f7f7;background-image:-moz-linear-gradient(top, #f5f5f5, #f9f9f9);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#f5f5f5), to(#f9f9f9));background-image:-webkit-linear-gradient(top, #f5f5f5, #f9f9f9);background-image:-o-linear-gradient(top, #f5f5f5, #f9f9f9);background-image:linear-gradient(to bottom, #f5f5f5, #f9f9f9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#fff9f9f9', GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}
+.progress .bar{width:0;height:100%;color:#fff;float:left;font-size:12px;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top, #149bdf, #0480be);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#149bdf), to(#0480be));background-image:-webkit-linear-gradient(top, #149bdf, #0480be);background-image:-o-linear-gradient(top, #149bdf, #0480be);background-image:linear-gradient(to bottom, #149bdf, #0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf', endColorstr='#ff0480be', GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}
+.progress .bar+.bar{-webkit-box-shadow:inset 1px 0 0 rgba(0,0,0,.15), inset 0 -1px 0 rgba(0,0,0,.15);-moz-box-shadow:inset 1px 0 0 rgba(0,0,0,.15), inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 1px 0 0 rgba(0,0,0,.15), inset 0 -1px 0 rgba(0,0,0,.15)}
+.progress-striped .bar{background-color:#149bdf;background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, rgba(255,255,255,0.15)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255,255,255,0.15)), color-stop(.75, rgba(255,255,255,0.15)), color-stop(.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);-webkit-background-size:40px 40px;-moz-background-size:40px 40px;-o-background-size:40px 40px;background-size:40px 40px}
+.progress.active .bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}
+.progress-danger .bar,.progress .bar-danger{background-color:#dd514c;background-image:-moz-linear-gradient(top, #ee5f5b, #c43c35);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#c43c35));background-image:-webkit-linear-gradient(top, #ee5f5b, #c43c35);background-image:-o-linear-gradient(top, #ee5f5b, #c43c35);background-image:linear-gradient(to bottom, #ee5f5b, #c43c35);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffc43c35', GradientType=0)}
+.progress-danger.progress-striped .bar,.progress-striped .bar-danger{background-color:#ee5f5b;background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, rgba(255,255,255,0.15)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255,255,255,0.15)), color-stop(.75, rgba(255,255,255,0.15)), color-stop(.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}
+.progress-success .bar,.progress .bar-success{background-color:#5eb95e;background-image:-moz-linear-gradient(top, #62c462, #57a957);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#57a957));background-image:-webkit-linear-gradient(top, #62c462, #57a957);background-image:-o-linear-gradient(top, #62c462, #57a957);background-image:linear-gradient(to bottom, #62c462, #57a957);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff57a957', GradientType=0)}
+.progress-success.progress-striped .bar,.progress-striped .bar-success{background-color:#62c462;background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, rgba(255,255,255,0.15)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255,255,255,0.15)), color-stop(.75, rgba(255,255,255,0.15)), color-stop(.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}
+.progress-info .bar,.progress .bar-info{background-color:#4bb1cf;background-image:-moz-linear-gradient(top, #5bc0de, #339bb9);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#339bb9));background-image:-webkit-linear-gradient(top, #5bc0de, #339bb9);background-image:-o-linear-gradient(top, #5bc0de, #339bb9);background-image:linear-gradient(to bottom, #5bc0de, #339bb9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff339bb9', GradientType=0)}
+.progress-info.progress-striped .bar,.progress-striped .bar-info{background-color:#5bc0de;background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, rgba(255,255,255,0.15)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255,255,255,0.15)), color-stop(.75, rgba(255,255,255,0.15)), color-stop(.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}
+.progress-warning .bar,.progress .bar-warning{background-color:#faa732;background-image:-moz-linear-gradient(top, #fbb450, #f89406);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));background-image:-webkit-linear-gradient(top, #fbb450, #f89406);background-image:-o-linear-gradient(top, #fbb450, #f89406);background-image:linear-gradient(to bottom, #fbb450, #f89406);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450', endColorstr='#fff89406', GradientType=0)}
+.progress-warning.progress-striped .bar,.progress-striped .bar-warning{background-color:#fbb450;background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, rgba(255,255,255,0.15)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255,255,255,0.15)), color-stop(.75, rgba(255,255,255,0.15)), color-stop(.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}
+.accordion{margin-bottom:20px}
+.accordion-group{margin-bottom:2px;border:1px solid #e5e5e5;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}
+.accordion-heading{border-bottom:0}
+.accordion-heading .accordion-toggle{display:block;padding:8px 15px}
+.accordion-toggle{cursor:pointer}
+.accordion-inner{padding:9px 15px;border-top:1px solid #e5e5e5}
+.carousel{position:relative;margin-bottom:20px;line-height:1}
+.carousel-inner{overflow:hidden;width:100%;position:relative}
+.carousel-inner>.item{display:none;position:relative;-webkit-transition:.6s ease-in-out left;-moz-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;line-height:1}
+.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}
+.carousel-inner>.active{left:0}
+.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}
+.carousel-inner>.next{left:100%}
+.carousel-inner>.prev{left:-100%}
+.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}
+.carousel-inner>.active.left{left:-100%}
+.carousel-inner>.active.right{left:100%}
+.carousel-control{position:absolute;top:40%;left:15px;width:40px;height:40px;margin-top:-20px;font-size:60px;font-weight:100;line-height:30px;color:#fff;text-align:center;background:#222;border:3px solid #fff;-webkit-border-radius:23px;-moz-border-radius:23px;border-radius:23px;opacity:.5;filter:alpha(opacity=50)}.carousel-control.right{left:auto;right:15px}
+.carousel-control:hover,.carousel-control:focus{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}
+.carousel-indicators{position:absolute;top:15px;right:15px;z-index:5;margin:0;list-style:none}.carousel-indicators li{display:block;float:left;width:10px;height:10px;margin-left:5px;text-indent:-999px;background-color:#ccc;background-color:rgba(255,255,255,0.25);border-radius:5px}
+.carousel-indicators .active{background-color:#fff}
+.carousel-caption{position:absolute;left:0;right:0;bottom:0;padding:15px;background:#333;background:rgba(0,0,0,0.75)}
+.carousel-caption h4,.carousel-caption p{color:#fff;line-height:20px}
+.carousel-caption h4{margin:0 0 5px}
+.carousel-caption p{margin-bottom:0}
+.hero-unit{padding:60px;margin-bottom:30px;font-size:18px;font-weight:200;line-height:30px;color:inherit;background-color:#eee;border-radius:6px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.hero-unit h1{margin-bottom:0;font-size:60px;line-height:1;color:inherit;letter-spacing:-1px}
+.hero-unit li{line-height:30px}
+.pull-right{float:right}
+.pull-left{float:left}
+.hide{display:none}
+.show{display:block}
+.invisible{visibility:hidden}
+.affix{position:fixed}
+@-ms-viewport{width:device-width}.hidden{display:none;visibility:hidden}
+.visible-phone{display:none !important}
+.visible-tablet{display:none !important}
+.hidden-desktop{display:none !important}
+.visible-desktop{display:inherit !important}
+@media (min-width:768px) and (max-width:979px){.hidden-desktop{display:inherit !important} .visible-desktop{display:none !important} .visible-tablet{display:inherit !important} .hidden-tablet{display:none !important}}@media (max-width:767px){.hidden-desktop{display:inherit !important} .visible-desktop{display:none !important} .visible-phone{display:inherit !important} .hidden-phone{display:none !important}}.visible-print{display:none !important}
+@media print{.visible-print{display:inherit !important} .hidden-print{display:none !important}}@media (min-width:1200px){.row{margin-left:-30px;*zoom:1}.row:before,.row:after{display:table;content:"";line-height:0} .row:after{clear:both} [class*="span"]{float:left;min-height:1px;margin-left:30px} .container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:1170px} .span12{width:1170px} .span11{width:1070px} .span10{width:970px} .span9{width:870px} .span8{width:770px} .span7{width:670px} .span6{width:570px} .span5{width:470px} .span4{width:370px} .span3{width:270px} .span2{width:170px} .span1{width:70px} .offset12{margin-left:1230px} .offset11{margin-left:1130px} .offset10{margin-left:1030px} .offset9{margin-left:930px} .offset8{margin-left:830px} .offset7{margin-left:730px} .offset6{margin-left:630px} .offset5{margin-left:530px} .offset4{margin-left:430px} .offset3{margin-left:330px} .offset2{margin-left:230px} .offset1{margin-left:130px} .row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;content:"";line-height:0} .row-fluid:after{clear:both} .row-fluid [class*="span"]{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;float:left;margin-left:2.564102564102564%;*margin-left:2.5109110747408616%} .row-fluid [class*="span"]:first-child{margin-left:0} .row-fluid .controls-row [class*="span"]+[class*="span"]{margin-left:2.564102564102564%} .row-fluid .span12{width:100%;*width:99.94680851063829%} .row-fluid .span11{width:91.45299145299145%;*width:91.39979996362975%} .row-fluid .span10{width:82.90598290598291%;*width:82.8527914166212%} .row-fluid .span9{width:74.35897435897436%;*width:74.30578286961266%} .row-fluid .span8{width:65.81196581196582%;*width:65.75877432260411%} .row-fluid .span7{width:57.26495726495726%;*width:57.21176577559556%} .row-fluid .span6{width:48.717948717948715%;*width:48.664757228587014%} .row-fluid .span5{width:40.17094017094017%;*width:40.11774868157847%} .row-fluid .span4{width:31.623931623931625%;*width:31.570740134569924%} .row-fluid .span3{width:23.076923076923077%;*width:23.023731587561375%} .row-fluid .span2{width:14.52991452991453%;*width:14.476723040552828%} .row-fluid .span1{width:5.982905982905983%;*width:5.929714493544281%} .row-fluid .offset12{margin-left:105.12820512820512%;*margin-left:105.02182214948171%} .row-fluid .offset12:first-child{margin-left:102.56410256410257%;*margin-left:102.45771958537915%} .row-fluid .offset11{margin-left:96.58119658119658%;*margin-left:96.47481360247316%} .row-fluid .offset11:first-child{margin-left:94.01709401709402%;*margin-left:93.91071103837061%} .row-fluid .offset10{margin-left:88.03418803418803%;*margin-left:87.92780505546462%} .row-fluid .offset10:first-child{margin-left:85.47008547008548%;*margin-left:85.36370249136206%} .row-fluid .offset9{margin-left:79.48717948717949%;*margin-left:79.38079650845607%} .row-fluid .offset9:first-child{margin-left:76.92307692307693%;*margin-left:76.81669394435352%} .row-fluid .offset8{margin-left:70.94017094017094%;*margin-left:70.83378796144753%} .row-fluid .offset8:first-child{margin-left:68.37606837606839%;*margin-left:68.26968539734497%} .row-fluid .offset7{margin-left:62.393162393162385%;*margin-left:62.28677941443899%} .row-fluid .offset7:first-child{margin-left:59.82905982905982%;*margin-left:59.72267685033642%} .row-fluid .offset6{margin-left:53.84615384615384%;*margin-left:53.739770867430444%} .row-fluid .offset6:first-child{margin-left:51.28205128205128%;*margin-left:51.175668303327875%} .row-fluid .offset5{margin-left:45.299145299145295%;*margin-left:45.1927623204219%} .row-fluid .offset5:first-child{margin-left:42.73504273504273%;*margin-left:42.62865975631933%} .row-fluid .offset4{margin-left:36.75213675213675%;*margin-left:36.645753773413354%} .row-fluid .offset4:first-child{margin-left:34.18803418803419%;*margin-left:34.081651209310785%} .row-fluid .offset3{margin-left:28.205128205128204%;*margin-left:28.0987452264048%} .row-fluid .offset3:first-child{margin-left:25.641025641025642%;*margin-left:25.53464266230224%} .row-fluid .offset2{margin-left:19.65811965811966%;*margin-left:19.551736679396257%} .row-fluid .offset2:first-child{margin-left:17.094017094017094%;*margin-left:16.98763411529369%} .row-fluid .offset1{margin-left:11.11111111111111%;*margin-left:11.004728132387708%} .row-fluid .offset1:first-child{margin-left:8.547008547008547%;*margin-left:8.440625568285142%} input,textarea,.uneditable-input{margin-left:0} .controls-row [class*="span"]+[class*="span"]{margin-left:30px} input.span12,textarea.span12,.uneditable-input.span12{width:1156px} input.span11,textarea.span11,.uneditable-input.span11{width:1056px} input.span10,textarea.span10,.uneditable-input.span10{width:956px} input.span9,textarea.span9,.uneditable-input.span9{width:856px} input.span8,textarea.span8,.uneditable-input.span8{width:756px} input.span7,textarea.span7,.uneditable-input.span7{width:656px} input.span6,textarea.span6,.uneditable-input.span6{width:556px} input.span5,textarea.span5,.uneditable-input.span5{width:456px} input.span4,textarea.span4,.uneditable-input.span4{width:356px} input.span3,textarea.span3,.uneditable-input.span3{width:256px} input.span2,textarea.span2,.uneditable-input.span2{width:156px} input.span1,textarea.span1,.uneditable-input.span1{width:56px} .thumbnails{margin-left:-30px} .thumbnails>li{margin-left:30px} .row-fluid .thumbnails{margin-left:0}}@media (min-width:768px) and (max-width:979px){.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;content:"";line-height:0} .row:after{clear:both} [class*="span"]{float:left;min-height:1px;margin-left:20px} .container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:724px} .span12{width:724px} .span11{width:662px} .span10{width:600px} .span9{width:538px} .span8{width:476px} .span7{width:414px} .span6{width:352px} .span5{width:290px} .span4{width:228px} .span3{width:166px} .span2{width:104px} .span1{width:42px} .offset12{margin-left:764px} .offset11{margin-left:702px} .offset10{margin-left:640px} .offset9{margin-left:578px} .offset8{margin-left:516px} .offset7{margin-left:454px} .offset6{margin-left:392px} .offset5{margin-left:330px} .offset4{margin-left:268px} .offset3{margin-left:206px} .offset2{margin-left:144px} .offset1{margin-left:82px} .row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;content:"";line-height:0} .row-fluid:after{clear:both} .row-fluid [class*="span"]{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;float:left;margin-left:2.7624309392265194%;*margin-left:2.709239449864817%} .row-fluid [class*="span"]:first-child{margin-left:0} .row-fluid .controls-row [class*="span"]+[class*="span"]{margin-left:2.7624309392265194%} .row-fluid .span12{width:100%;*width:99.94680851063829%} .row-fluid .span11{width:91.43646408839778%;*width:91.38327259903608%} .row-fluid .span10{width:82.87292817679558%;*width:82.81973668743387%} .row-fluid .span9{width:74.30939226519337%;*width:74.25620077583166%} .row-fluid .span8{width:65.74585635359117%;*width:65.69266486422946%} .row-fluid .span7{width:57.18232044198895%;*width:57.12912895262725%} .row-fluid .span6{width:48.61878453038674%;*width:48.56559304102504%} .row-fluid .span5{width:40.05524861878453%;*width:40.00205712942283%} .row-fluid .span4{width:31.491712707182323%;*width:31.43852121782062%} .row-fluid .span3{width:22.92817679558011%;*width:22.87498530621841%} .row-fluid .span2{width:14.3646408839779%;*width:14.311449394616199%} .row-fluid .span1{width:5.801104972375691%;*width:5.747913483013988%} .row-fluid .offset12{margin-left:105.52486187845304%;*margin-left:105.41847889972962%} .row-fluid .offset12:first-child{margin-left:102.76243093922652%;*margin-left:102.6560479605031%} .row-fluid .offset11{margin-left:96.96132596685082%;*margin-left:96.8549429881274%} .row-fluid .offset11:first-child{margin-left:94.1988950276243%;*margin-left:94.09251204890089%} .row-fluid .offset10{margin-left:88.39779005524862%;*margin-left:88.2914070765252%} .row-fluid .offset10:first-child{margin-left:85.6353591160221%;*margin-left:85.52897613729868%} .row-fluid .offset9{margin-left:79.8342541436464%;*margin-left:79.72787116492299%} .row-fluid .offset9:first-child{margin-left:77.07182320441989%;*margin-left:76.96544022569647%} .row-fluid .offset8{margin-left:71.2707182320442%;*margin-left:71.16433525332079%} .row-fluid .offset8:first-child{margin-left:68.50828729281768%;*margin-left:68.40190431409427%} .row-fluid .offset7{margin-left:62.70718232044199%;*margin-left:62.600799341718584%} .row-fluid .offset7:first-child{margin-left:59.94475138121547%;*margin-left:59.838368402492065%} .row-fluid .offset6{margin-left:54.14364640883978%;*margin-left:54.037263430116376%} .row-fluid .offset6:first-child{margin-left:51.38121546961326%;*margin-left:51.27483249088986%} .row-fluid .offset5{margin-left:45.58011049723757%;*margin-left:45.47372751851417%} .row-fluid .offset5:first-child{margin-left:42.81767955801105%;*margin-left:42.71129657928765%} .row-fluid .offset4{margin-left:37.01657458563536%;*margin-left:36.91019160691196%} .row-fluid .offset4:first-child{margin-left:34.25414364640884%;*margin-left:34.14776066768544%} .row-fluid .offset3{margin-left:28.45303867403315%;*margin-left:28.346655695309746%} .row-fluid .offset3:first-child{margin-left:25.69060773480663%;*margin-left:25.584224756083227%} .row-fluid .offset2{margin-left:19.88950276243094%;*margin-left:19.783119783707537%} .row-fluid .offset2:first-child{margin-left:17.12707182320442%;*margin-left:17.02068884448102%} .row-fluid .offset1{margin-left:11.32596685082873%;*margin-left:11.219583872105325%} .row-fluid .offset1:first-child{margin-left:8.56353591160221%;*margin-left:8.457152932878806%} input,textarea,.uneditable-input{margin-left:0} .controls-row [class*="span"]+[class*="span"]{margin-left:20px} input.span12,textarea.span12,.uneditable-input.span12{width:710px} input.span11,textarea.span11,.uneditable-input.span11{width:648px} input.span10,textarea.span10,.uneditable-input.span10{width:586px} input.span9,textarea.span9,.uneditable-input.span9{width:524px} input.span8,textarea.span8,.uneditable-input.span8{width:462px} input.span7,textarea.span7,.uneditable-input.span7{width:400px} input.span6,textarea.span6,.uneditable-input.span6{width:338px} input.span5,textarea.span5,.uneditable-input.span5{width:276px} input.span4,textarea.span4,.uneditable-input.span4{width:214px} input.span3,textarea.span3,.uneditable-input.span3{width:152px} input.span2,textarea.span2,.uneditable-input.span2{width:90px} input.span1,textarea.span1,.uneditable-input.span1{width:28px}}@media (max-width:767px){body{padding-left:20px;padding-right:20px} .navbar-fixed-top,.navbar-fixed-bottom,.navbar-static-top{margin-left:-20px;margin-right:-20px} .container-fluid{padding:0} .dl-horizontal dt{float:none;clear:none;width:auto;text-align:left} .dl-horizontal dd{margin-left:0} .container{width:auto} .row-fluid{width:100%} .row,.thumbnails{margin-left:0} .thumbnails>li{float:none;margin-left:0} [class*="span"],.uneditable-input[class*="span"],.row-fluid [class*="span"]{float:none;display:block;width:100%;margin-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box} .span12,.row-fluid .span12{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box} .row-fluid [class*="offset"]:first-child{margin-left:0} .input-large,.input-xlarge,.input-xxlarge,input[class*="span"],select[class*="span"],textarea[class*="span"],.uneditable-input{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box} .input-prepend input,.input-append input,.input-prepend input[class*="span"],.input-append input[class*="span"]{display:inline-block;width:auto} .controls-row [class*="span"]+[class*="span"]{margin-left:0} .modal{position:fixed;top:20px;left:20px;right:20px;width:auto;margin:0}.modal.fade{top:-100px} .modal.fade.in{top:20px}}@media (max-width:480px){.nav-collapse{-webkit-transform:translate3d(0, 0, 0)} .page-header h1 small{display:block;line-height:20px} input[type="checkbox"],input[type="radio"]{border:1px solid #ccc} .form-horizontal .control-label{float:none;width:auto;padding-top:0;text-align:left} .form-horizontal .controls{margin-left:0} .form-horizontal .control-list{padding-top:0} .form-horizontal .form-actions{padding-left:10px;padding-right:10px} .media .pull-left,.media .pull-right{float:none;display:block;margin-bottom:10px} .media-object{margin-right:0;margin-left:0} .modal{top:10px;left:10px;right:10px} .modal-header .close{padding:10px;margin:-10px} .carousel-caption{position:static}}@media (max-width:979px){body{padding-top:0} .navbar-fixed-top,.navbar-fixed-bottom{position:static} .navbar-fixed-top{margin-bottom:20px} .navbar-fixed-bottom{margin-top:20px} .navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding:5px} .navbar .container{width:auto;padding:0} .navbar .brand{padding-left:10px;padding-right:10px;margin:0 0 0 -5px} .nav-collapse{clear:both} .nav-collapse .nav{float:none;margin:0 0 10px} .nav-collapse .nav>li{float:none} .nav-collapse .nav>li>a{margin-bottom:2px} .nav-collapse .nav>.divider-vertical{display:none} .nav-collapse .nav .nav-header{color:#777;text-shadow:none} .nav-collapse .nav>li>a,.nav-collapse .dropdown-menu a{padding:9px 15px;font-weight:bold;color:#777;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px} .nav-collapse .btn{padding:4px 10px 4px;font-weight:normal;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px} .nav-collapse .dropdown-menu li+li a{margin-bottom:2px} .nav-collapse .nav>li>a:hover,.nav-collapse .nav>li>a:focus,.nav-collapse .dropdown-menu a:hover,.nav-collapse .dropdown-menu a:focus{background-color:#f2f2f2} .navbar-inverse .nav-collapse .nav>li>a,.navbar-inverse .nav-collapse .dropdown-menu a{color:#999} .navbar-inverse .nav-collapse .nav>li>a:hover,.navbar-inverse .nav-collapse .nav>li>a:focus,.navbar-inverse .nav-collapse .dropdown-menu a:hover,.navbar-inverse .nav-collapse .dropdown-menu a:focus{background-color:#111} .nav-collapse.in .btn-group{margin-top:5px;padding:0} .nav-collapse .dropdown-menu{position:static;top:auto;left:auto;float:none;display:none;max-width:none;margin:0 15px;padding:0;background-color:transparent;border:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none} .nav-collapse .open>.dropdown-menu{display:block} .nav-collapse .dropdown-menu:before,.nav-collapse .dropdown-menu:after{display:none} .nav-collapse .dropdown-menu .divider{display:none} .nav-collapse .nav>li>.dropdown-menu:before,.nav-collapse .nav>li>.dropdown-menu:after{display:none} .nav-collapse .navbar-form,.nav-collapse .navbar-search{float:none;padding:10px 15px;margin:10px 0;border-top:1px solid #f2f2f2;border-bottom:1px solid #f2f2f2;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1)} .navbar-inverse .nav-collapse .navbar-form,.navbar-inverse .nav-collapse .navbar-search{border-top-color:#111;border-bottom-color:#111} .navbar .nav-collapse .nav.pull-right{float:none;margin-left:0} .nav-collapse,.nav-collapse.collapse{overflow:hidden;height:0} .navbar .btn-navbar{display:block} .navbar-static .navbar-inner{padding-left:10px;padding-right:10px}}@media (min-width:979px + 1){.nav-collapse.collapse{height:auto !important;overflow:visible !important}}@font-face{font-family:'FontAwesome';src:url('../components/font-awesome/font/fontawesome-webfont.eot?v=3.2.1');src:url('../components/font-awesome/font/fontawesome-webfont.eot?#iefix&v=3.2.1') format('embedded-opentype'),url('../components/font-awesome/font/fontawesome-webfont.woff?v=3.2.1') format('woff'),url('../components/font-awesome/font/fontawesome-webfont.ttf?v=3.2.1') format('truetype'),url('../components/font-awesome/font/fontawesome-webfont.svg#fontawesomeregular?v=3.2.1') format('svg');font-weight:normal;font-style:normal}[class^="icon-"],[class*=" icon-"]{font-family:FontAwesome;font-weight:normal;font-style:normal;text-decoration:inherit;-webkit-font-smoothing:antialiased;*margin-right:.3em}
+[class^="icon-"]:before,[class*=" icon-"]:before{text-decoration:inherit;display:inline-block;speak:none}
+.icon-large:before{vertical-align:-10%;font-size:1.3333333333333333em}
+a [class^="icon-"],a [class*=" icon-"]{display:inline}
+[class^="icon-"].icon-fixed-width,[class*=" icon-"].icon-fixed-width{display:inline-block;width:1.1428571428571428em;text-align:right;padding-right:.2857142857142857em}[class^="icon-"].icon-fixed-width.icon-large,[class*=" icon-"].icon-fixed-width.icon-large{width:1.4285714285714286em}
+.icons-ul{margin-left:2.142857142857143em;list-style-type:none}.icons-ul>li{position:relative}
+.icons-ul .icon-li{position:absolute;left:-2.142857142857143em;width:2.142857142857143em;text-align:center;line-height:inherit}
+[class^="icon-"].hide,[class*=" icon-"].hide{display:none}
+.icon-muted{color:#eee}
+.icon-light{color:#fff}
+.icon-dark{color:#333}
+.icon-border{border:solid 1px #eee;padding:.2em .25em .15em;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}
+.icon-2x{font-size:2em}.icon-2x.icon-border{border-width:2px;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}
+.icon-3x{font-size:3em}.icon-3x.icon-border{border-width:3px;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}
+.icon-4x{font-size:4em}.icon-4x.icon-border{border-width:4px;border-radius:6px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}
+.icon-5x{font-size:5em}.icon-5x.icon-border{border-width:5px;border-radius:7px;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px}
+.pull-right{float:right}
+.pull-left{float:left}
+[class^="icon-"].pull-left,[class*=" icon-"].pull-left{margin-right:.3em}
+[class^="icon-"].pull-right,[class*=" icon-"].pull-right{margin-left:.3em}
+[class^="icon-"],[class*=" icon-"]{display:inline;width:auto;height:auto;line-height:normal;vertical-align:baseline;background-image:none;background-position:0 0;background-repeat:repeat;margin-top:0}
+.icon-white,.nav-pills>.active>a>[class^="icon-"],.nav-pills>.active>a>[class*=" icon-"],.nav-list>.active>a>[class^="icon-"],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse .nav>.active>a>[class^="icon-"],.navbar-inverse .nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" icon-"],.dropdown-submenu:hover>a>[class^="icon-"],.dropdown-submenu:hover>a>[class*=" icon-"]{background-image:none}
+.btn [class^="icon-"].icon-large,.nav [class^="icon-"].icon-large,.btn [class*=" icon-"].icon-large,.nav [class*=" icon-"].icon-large{line-height:.9em}
+.btn [class^="icon-"].icon-spin,.nav [class^="icon-"].icon-spin,.btn [class*=" icon-"].icon-spin,.nav [class*=" icon-"].icon-spin{display:inline-block}
+.nav-tabs [class^="icon-"],.nav-pills [class^="icon-"],.nav-tabs [class*=" icon-"],.nav-pills [class*=" icon-"],.nav-tabs [class^="icon-"].icon-large,.nav-pills [class^="icon-"].icon-large,.nav-tabs [class*=" icon-"].icon-large,.nav-pills [class*=" icon-"].icon-large{line-height:.9em}
+.btn [class^="icon-"].pull-left.icon-2x,.btn [class*=" icon-"].pull-left.icon-2x,.btn [class^="icon-"].pull-right.icon-2x,.btn [class*=" icon-"].pull-right.icon-2x{margin-top:.18em}
+.btn [class^="icon-"].icon-spin.icon-large,.btn [class*=" icon-"].icon-spin.icon-large{line-height:.8em}
+.btn.btn-small [class^="icon-"].pull-left.icon-2x,.btn.btn-small [class*=" icon-"].pull-left.icon-2x,.btn.btn-small [class^="icon-"].pull-right.icon-2x,.btn.btn-small [class*=" icon-"].pull-right.icon-2x{margin-top:.25em}
+.btn.btn-large [class^="icon-"],.btn.btn-large [class*=" icon-"]{margin-top:0}.btn.btn-large [class^="icon-"].pull-left.icon-2x,.btn.btn-large [class*=" icon-"].pull-left.icon-2x,.btn.btn-large [class^="icon-"].pull-right.icon-2x,.btn.btn-large [class*=" icon-"].pull-right.icon-2x{margin-top:.05em}
+.btn.btn-large [class^="icon-"].pull-left.icon-2x,.btn.btn-large [class*=" icon-"].pull-left.icon-2x{margin-right:.2em}
+.btn.btn-large [class^="icon-"].pull-right.icon-2x,.btn.btn-large [class*=" icon-"].pull-right.icon-2x{margin-left:.2em}
+.nav-list [class^="icon-"],.nav-list [class*=" icon-"]{line-height:inherit}
+.icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:-35%}.icon-stack [class^="icon-"],.icon-stack [class*=" icon-"]{display:block;text-align:center;position:absolute;width:100%;height:100%;font-size:1em;line-height:inherit;*line-height:2em}
+.icon-stack .icon-stack-base{font-size:2em;*line-height:1em}
+.icon-spin{display:inline-block;-moz-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;-webkit-animation:spin 2s infinite linear;animation:spin 2s infinite linear}
+a .icon-stack,a .icon-spin{display:inline-block;text-decoration:none}
+@-moz-keyframes spin{0%{-moz-transform:rotate(0deg)} 100%{-moz-transform:rotate(359deg)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)} 100%{-webkit-transform:rotate(359deg)}}@-o-keyframes spin{0%{-o-transform:rotate(0deg)} 100%{-o-transform:rotate(359deg)}}@-ms-keyframes spin{0%{-ms-transform:rotate(0deg)} 100%{-ms-transform:rotate(359deg)}}@keyframes spin{0%{transform:rotate(0deg)} 100%{transform:rotate(359deg)}}.icon-rotate-90:before{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1)}
+.icon-rotate-180:before{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2)}
+.icon-rotate-270:before{-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3)}
+.icon-flip-horizontal:before{-webkit-transform:scale(-1, 1);-moz-transform:scale(-1, 1);-ms-transform:scale(-1, 1);-o-transform:scale(-1, 1);transform:scale(-1, 1)}
+.icon-flip-vertical:before{-webkit-transform:scale(1, -1);-moz-transform:scale(1, -1);-ms-transform:scale(1, -1);-o-transform:scale(1, -1);transform:scale(1, -1)}
+a .icon-rotate-90:before,a .icon-rotate-180:before,a .icon-rotate-270:before,a .icon-flip-horizontal:before,a .icon-flip-vertical:before{display:inline-block}
+.icon-glass:before{content:"\f000"}
+.icon-music:before{content:"\f001"}
+.icon-search:before{content:"\f002"}
+.icon-envelope-alt:before{content:"\f003"}
+.icon-heart:before{content:"\f004"}
+.icon-star:before{content:"\f005"}
+.icon-star-empty:before{content:"\f006"}
+.icon-user:before{content:"\f007"}
+.icon-film:before{content:"\f008"}
+.icon-th-large:before{content:"\f009"}
+.icon-th:before{content:"\f00a"}
+.icon-th-list:before{content:"\f00b"}
+.icon-ok:before{content:"\f00c"}
+.icon-remove:before{content:"\f00d"}
+.icon-zoom-in:before{content:"\f00e"}
+.icon-zoom-out:before{content:"\f010"}
+.icon-power-off:before,.icon-off:before{content:"\f011"}
+.icon-signal:before{content:"\f012"}
+.icon-gear:before,.icon-cog:before{content:"\f013"}
+.icon-trash:before{content:"\f014"}
+.icon-home:before{content:"\f015"}
+.icon-file-alt:before{content:"\f016"}
+.icon-time:before{content:"\f017"}
+.icon-road:before{content:"\f018"}
+.icon-download-alt:before{content:"\f019"}
+.icon-download:before{content:"\f01a"}
+.icon-upload:before{content:"\f01b"}
+.icon-inbox:before{content:"\f01c"}
+.icon-play-circle:before{content:"\f01d"}
+.icon-rotate-right:before,.icon-repeat:before{content:"\f01e"}
+.icon-refresh:before{content:"\f021"}
+.icon-list-alt:before{content:"\f022"}
+.icon-lock:before{content:"\f023"}
+.icon-flag:before{content:"\f024"}
+.icon-headphones:before{content:"\f025"}
+.icon-volume-off:before{content:"\f026"}
+.icon-volume-down:before{content:"\f027"}
+.icon-volume-up:before{content:"\f028"}
+.icon-qrcode:before{content:"\f029"}
+.icon-barcode:before{content:"\f02a"}
+.icon-tag:before{content:"\f02b"}
+.icon-tags:before{content:"\f02c"}
+.icon-book:before{content:"\f02d"}
+.icon-bookmark:before{content:"\f02e"}
+.icon-print:before{content:"\f02f"}
+.icon-camera:before{content:"\f030"}
+.icon-font:before{content:"\f031"}
+.icon-bold:before{content:"\f032"}
+.icon-italic:before{content:"\f033"}
+.icon-text-height:before{content:"\f034"}
+.icon-text-width:before{content:"\f035"}
+.icon-align-left:before{content:"\f036"}
+.icon-align-center:before{content:"\f037"}
+.icon-align-right:before{content:"\f038"}
+.icon-align-justify:before{content:"\f039"}
+.icon-list:before{content:"\f03a"}
+.icon-indent-left:before{content:"\f03b"}
+.icon-indent-right:before{content:"\f03c"}
+.icon-facetime-video:before{content:"\f03d"}
+.icon-picture:before{content:"\f03e"}
+.icon-pencil:before{content:"\f040"}
+.icon-map-marker:before{content:"\f041"}
+.icon-adjust:before{content:"\f042"}
+.icon-tint:before{content:"\f043"}
+.icon-edit:before{content:"\f044"}
+.icon-share:before{content:"\f045"}
+.icon-check:before{content:"\f046"}
+.icon-move:before{content:"\f047"}
+.icon-step-backward:before{content:"\f048"}
+.icon-fast-backward:before{content:"\f049"}
+.icon-backward:before{content:"\f04a"}
+.icon-play:before{content:"\f04b"}
+.icon-pause:before{content:"\f04c"}
+.icon-stop:before{content:"\f04d"}
+.icon-forward:before{content:"\f04e"}
+.icon-fast-forward:before{content:"\f050"}
+.icon-step-forward:before{content:"\f051"}
+.icon-eject:before{content:"\f052"}
+.icon-chevron-left:before{content:"\f053"}
+.icon-chevron-right:before{content:"\f054"}
+.icon-plus-sign:before{content:"\f055"}
+.icon-minus-sign:before{content:"\f056"}
+.icon-remove-sign:before{content:"\f057"}
+.icon-ok-sign:before{content:"\f058"}
+.icon-question-sign:before{content:"\f059"}
+.icon-info-sign:before{content:"\f05a"}
+.icon-screenshot:before{content:"\f05b"}
+.icon-remove-circle:before{content:"\f05c"}
+.icon-ok-circle:before{content:"\f05d"}
+.icon-ban-circle:before{content:"\f05e"}
+.icon-arrow-left:before{content:"\f060"}
+.icon-arrow-right:before{content:"\f061"}
+.icon-arrow-up:before{content:"\f062"}
+.icon-arrow-down:before{content:"\f063"}
+.icon-mail-forward:before,.icon-share-alt:before{content:"\f064"}
+.icon-resize-full:before{content:"\f065"}
+.icon-resize-small:before{content:"\f066"}
+.icon-plus:before{content:"\f067"}
+.icon-minus:before{content:"\f068"}
+.icon-asterisk:before{content:"\f069"}
+.icon-exclamation-sign:before{content:"\f06a"}
+.icon-gift:before{content:"\f06b"}
+.icon-leaf:before{content:"\f06c"}
+.icon-fire:before{content:"\f06d"}
+.icon-eye-open:before{content:"\f06e"}
+.icon-eye-close:before{content:"\f070"}
+.icon-warning-sign:before{content:"\f071"}
+.icon-plane:before{content:"\f072"}
+.icon-calendar:before{content:"\f073"}
+.icon-random:before{content:"\f074"}
+.icon-comment:before{content:"\f075"}
+.icon-magnet:before{content:"\f076"}
+.icon-chevron-up:before{content:"\f077"}
+.icon-chevron-down:before{content:"\f078"}
+.icon-retweet:before{content:"\f079"}
+.icon-shopping-cart:before{content:"\f07a"}
+.icon-folder-close:before{content:"\f07b"}
+.icon-folder-open:before{content:"\f07c"}
+.icon-resize-vertical:before{content:"\f07d"}
+.icon-resize-horizontal:before{content:"\f07e"}
+.icon-bar-chart:before{content:"\f080"}
+.icon-twitter-sign:before{content:"\f081"}
+.icon-facebook-sign:before{content:"\f082"}
+.icon-camera-retro:before{content:"\f083"}
+.icon-key:before{content:"\f084"}
+.icon-gears:before,.icon-cogs:before{content:"\f085"}
+.icon-comments:before{content:"\f086"}
+.icon-thumbs-up-alt:before{content:"\f087"}
+.icon-thumbs-down-alt:before{content:"\f088"}
+.icon-star-half:before{content:"\f089"}
+.icon-heart-empty:before{content:"\f08a"}
+.icon-signout:before{content:"\f08b"}
+.icon-linkedin-sign:before{content:"\f08c"}
+.icon-pushpin:before{content:"\f08d"}
+.icon-external-link:before{content:"\f08e"}
+.icon-signin:before{content:"\f090"}
+.icon-trophy:before{content:"\f091"}
+.icon-github-sign:before{content:"\f092"}
+.icon-upload-alt:before{content:"\f093"}
+.icon-lemon:before{content:"\f094"}
+.icon-phone:before{content:"\f095"}
+.icon-unchecked:before,.icon-check-empty:before{content:"\f096"}
+.icon-bookmark-empty:before{content:"\f097"}
+.icon-phone-sign:before{content:"\f098"}
+.icon-twitter:before{content:"\f099"}
+.icon-facebook:before{content:"\f09a"}
+.icon-github:before{content:"\f09b"}
+.icon-unlock:before{content:"\f09c"}
+.icon-credit-card:before{content:"\f09d"}
+.icon-rss:before{content:"\f09e"}
+.icon-hdd:before{content:"\f0a0"}
+.icon-bullhorn:before{content:"\f0a1"}
+.icon-bell:before{content:"\f0a2"}
+.icon-certificate:before{content:"\f0a3"}
+.icon-hand-right:before{content:"\f0a4"}
+.icon-hand-left:before{content:"\f0a5"}
+.icon-hand-up:before{content:"\f0a6"}
+.icon-hand-down:before{content:"\f0a7"}
+.icon-circle-arrow-left:before{content:"\f0a8"}
+.icon-circle-arrow-right:before{content:"\f0a9"}
+.icon-circle-arrow-up:before{content:"\f0aa"}
+.icon-circle-arrow-down:before{content:"\f0ab"}
+.icon-globe:before{content:"\f0ac"}
+.icon-wrench:before{content:"\f0ad"}
+.icon-tasks:before{content:"\f0ae"}
+.icon-filter:before{content:"\f0b0"}
+.icon-briefcase:before{content:"\f0b1"}
+.icon-fullscreen:before{content:"\f0b2"}
+.icon-group:before{content:"\f0c0"}
+.icon-link:before{content:"\f0c1"}
+.icon-cloud:before{content:"\f0c2"}
+.icon-beaker:before{content:"\f0c3"}
+.icon-cut:before{content:"\f0c4"}
+.icon-copy:before{content:"\f0c5"}
+.icon-paperclip:before,.icon-paper-clip:before{content:"\f0c6"}
+.icon-save:before{content:"\f0c7"}
+.icon-sign-blank:before{content:"\f0c8"}
+.icon-reorder:before{content:"\f0c9"}
+.icon-list-ul:before{content:"\f0ca"}
+.icon-list-ol:before{content:"\f0cb"}
+.icon-strikethrough:before{content:"\f0cc"}
+.icon-underline:before{content:"\f0cd"}
+.icon-table:before{content:"\f0ce"}
+.icon-magic:before{content:"\f0d0"}
+.icon-truck:before{content:"\f0d1"}
+.icon-pinterest:before{content:"\f0d2"}
+.icon-pinterest-sign:before{content:"\f0d3"}
+.icon-google-plus-sign:before{content:"\f0d4"}
+.icon-google-plus:before{content:"\f0d5"}
+.icon-money:before{content:"\f0d6"}
+.icon-caret-down:before{content:"\f0d7"}
+.icon-caret-up:before{content:"\f0d8"}
+.icon-caret-left:before{content:"\f0d9"}
+.icon-caret-right:before{content:"\f0da"}
+.icon-columns:before{content:"\f0db"}
+.icon-sort:before{content:"\f0dc"}
+.icon-sort-down:before{content:"\f0dd"}
+.icon-sort-up:before{content:"\f0de"}
+.icon-envelope:before{content:"\f0e0"}
+.icon-linkedin:before{content:"\f0e1"}
+.icon-rotate-left:before,.icon-undo:before{content:"\f0e2"}
+.icon-legal:before{content:"\f0e3"}
+.icon-dashboard:before{content:"\f0e4"}
+.icon-comment-alt:before{content:"\f0e5"}
+.icon-comments-alt:before{content:"\f0e6"}
+.icon-bolt:before{content:"\f0e7"}
+.icon-sitemap:before{content:"\f0e8"}
+.icon-umbrella:before{content:"\f0e9"}
+.icon-paste:before{content:"\f0ea"}
+.icon-lightbulb:before{content:"\f0eb"}
+.icon-exchange:before{content:"\f0ec"}
+.icon-cloud-download:before{content:"\f0ed"}
+.icon-cloud-upload:before{content:"\f0ee"}
+.icon-user-md:before{content:"\f0f0"}
+.icon-stethoscope:before{content:"\f0f1"}
+.icon-suitcase:before{content:"\f0f2"}
+.icon-bell-alt:before{content:"\f0f3"}
+.icon-coffee:before{content:"\f0f4"}
+.icon-food:before{content:"\f0f5"}
+.icon-file-text-alt:before{content:"\f0f6"}
+.icon-building:before{content:"\f0f7"}
+.icon-hospital:before{content:"\f0f8"}
+.icon-ambulance:before{content:"\f0f9"}
+.icon-medkit:before{content:"\f0fa"}
+.icon-fighter-jet:before{content:"\f0fb"}
+.icon-beer:before{content:"\f0fc"}
+.icon-h-sign:before{content:"\f0fd"}
+.icon-plus-sign-alt:before{content:"\f0fe"}
+.icon-double-angle-left:before{content:"\f100"}
+.icon-double-angle-right:before{content:"\f101"}
+.icon-double-angle-up:before{content:"\f102"}
+.icon-double-angle-down:before{content:"\f103"}
+.icon-angle-left:before{content:"\f104"}
+.icon-angle-right:before{content:"\f105"}
+.icon-angle-up:before{content:"\f106"}
+.icon-angle-down:before{content:"\f107"}
+.icon-desktop:before{content:"\f108"}
+.icon-laptop:before{content:"\f109"}
+.icon-tablet:before{content:"\f10a"}
+.icon-mobile-phone:before{content:"\f10b"}
+.icon-circle-blank:before{content:"\f10c"}
+.icon-quote-left:before{content:"\f10d"}
+.icon-quote-right:before{content:"\f10e"}
+.icon-spinner:before{content:"\f110"}
+.icon-circle:before{content:"\f111"}
+.icon-mail-reply:before,.icon-reply:before{content:"\f112"}
+.icon-github-alt:before{content:"\f113"}
+.icon-folder-close-alt:before{content:"\f114"}
+.icon-folder-open-alt:before{content:"\f115"}
+.icon-expand-alt:before{content:"\f116"}
+.icon-collapse-alt:before{content:"\f117"}
+.icon-smile:before{content:"\f118"}
+.icon-frown:before{content:"\f119"}
+.icon-meh:before{content:"\f11a"}
+.icon-gamepad:before{content:"\f11b"}
+.icon-keyboard:before{content:"\f11c"}
+.icon-flag-alt:before{content:"\f11d"}
+.icon-flag-checkered:before{content:"\f11e"}
+.icon-terminal:before{content:"\f120"}
+.icon-code:before{content:"\f121"}
+.icon-reply-all:before{content:"\f122"}
+.icon-mail-reply-all:before{content:"\f122"}
+.icon-star-half-full:before,.icon-star-half-empty:before{content:"\f123"}
+.icon-location-arrow:before{content:"\f124"}
+.icon-crop:before{content:"\f125"}
+.icon-code-fork:before{content:"\f126"}
+.icon-unlink:before{content:"\f127"}
+.icon-question:before{content:"\f128"}
+.icon-info:before{content:"\f129"}
+.icon-exclamation:before{content:"\f12a"}
+.icon-superscript:before{content:"\f12b"}
+.icon-subscript:before{content:"\f12c"}
+.icon-eraser:before{content:"\f12d"}
+.icon-puzzle-piece:before{content:"\f12e"}
+.icon-microphone:before{content:"\f130"}
+.icon-microphone-off:before{content:"\f131"}
+.icon-shield:before{content:"\f132"}
+.icon-calendar-empty:before{content:"\f133"}
+.icon-fire-extinguisher:before{content:"\f134"}
+.icon-rocket:before{content:"\f135"}
+.icon-maxcdn:before{content:"\f136"}
+.icon-chevron-sign-left:before{content:"\f137"}
+.icon-chevron-sign-right:before{content:"\f138"}
+.icon-chevron-sign-up:before{content:"\f139"}
+.icon-chevron-sign-down:before{content:"\f13a"}
+.icon-html5:before{content:"\f13b"}
+.icon-css3:before{content:"\f13c"}
+.icon-anchor:before{content:"\f13d"}
+.icon-unlock-alt:before{content:"\f13e"}
+.icon-bullseye:before{content:"\f140"}
+.icon-ellipsis-horizontal:before{content:"\f141"}
+.icon-ellipsis-vertical:before{content:"\f142"}
+.icon-rss-sign:before{content:"\f143"}
+.icon-play-sign:before{content:"\f144"}
+.icon-ticket:before{content:"\f145"}
+.icon-minus-sign-alt:before{content:"\f146"}
+.icon-check-minus:before{content:"\f147"}
+.icon-level-up:before{content:"\f148"}
+.icon-level-down:before{content:"\f149"}
+.icon-check-sign:before{content:"\f14a"}
+.icon-edit-sign:before{content:"\f14b"}
+.icon-external-link-sign:before{content:"\f14c"}
+.icon-share-sign:before{content:"\f14d"}
+.icon-compass:before{content:"\f14e"}
+.icon-collapse:before{content:"\f150"}
+.icon-collapse-top:before{content:"\f151"}
+.icon-expand:before{content:"\f152"}
+.icon-euro:before,.icon-eur:before{content:"\f153"}
+.icon-gbp:before{content:"\f154"}
+.icon-dollar:before,.icon-usd:before{content:"\f155"}
+.icon-rupee:before,.icon-inr:before{content:"\f156"}
+.icon-yen:before,.icon-jpy:before{content:"\f157"}
+.icon-renminbi:before,.icon-cny:before{content:"\f158"}
+.icon-won:before,.icon-krw:before{content:"\f159"}
+.icon-bitcoin:before,.icon-btc:before{content:"\f15a"}
+.icon-file:before{content:"\f15b"}
+.icon-file-text:before{content:"\f15c"}
+.icon-sort-by-alphabet:before{content:"\f15d"}
+.icon-sort-by-alphabet-alt:before{content:"\f15e"}
+.icon-sort-by-attributes:before{content:"\f160"}
+.icon-sort-by-attributes-alt:before{content:"\f161"}
+.icon-sort-by-order:before{content:"\f162"}
+.icon-sort-by-order-alt:before{content:"\f163"}
+.icon-thumbs-up:before{content:"\f164"}
+.icon-thumbs-down:before{content:"\f165"}
+.icon-youtube-sign:before{content:"\f166"}
+.icon-youtube:before{content:"\f167"}
+.icon-xing:before{content:"\f168"}
+.icon-xing-sign:before{content:"\f169"}
+.icon-youtube-play:before{content:"\f16a"}
+.icon-dropbox:before{content:"\f16b"}
+.icon-stackexchange:before{content:"\f16c"}
+.icon-instagram:before{content:"\f16d"}
+.icon-flickr:before{content:"\f16e"}
+.icon-adn:before{content:"\f170"}
+.icon-bitbucket:before{content:"\f171"}
+.icon-bitbucket-sign:before{content:"\f172"}
+.icon-tumblr:before{content:"\f173"}
+.icon-tumblr-sign:before{content:"\f174"}
+.icon-long-arrow-down:before{content:"\f175"}
+.icon-long-arrow-up:before{content:"\f176"}
+.icon-long-arrow-left:before{content:"\f177"}
+.icon-long-arrow-right:before{content:"\f178"}
+.icon-apple:before{content:"\f179"}
+.icon-windows:before{content:"\f17a"}
+.icon-android:before{content:"\f17b"}
+.icon-linux:before{content:"\f17c"}
+.icon-dribbble:before{content:"\f17d"}
+.icon-skype:before{content:"\f17e"}
+.icon-foursquare:before{content:"\f180"}
+.icon-trello:before{content:"\f181"}
+.icon-female:before{content:"\f182"}
+.icon-male:before{content:"\f183"}
+.icon-gittip:before{content:"\f184"}
+.icon-sun:before{content:"\f185"}
+.icon-moon:before{content:"\f186"}
+.icon-archive:before{content:"\f187"}
+.icon-bug:before{content:"\f188"}
+.icon-vk:before{content:"\f189"}
+.icon-weibo:before{content:"\f18a"}
+.icon-renren:before{content:"\f18b"}
+.border-box-sizing{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}
+.corner-all{border-radius:4px}
+.hbox{display:-webkit-box;-webkit-box-orient:horizontal;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:horizontal;-moz-box-align:stretch;display:box;box-orient:horizontal;box-align:stretch;display:flex;flex-direction:row;align-items:stretch}
+.hbox>*{-webkit-box-flex:0;-moz-box-flex:0;box-flex:0;flex:none}
+.vbox{display:-webkit-box;-webkit-box-orient:vertical;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:vertical;-moz-box-align:stretch;display:box;box-orient:vertical;box-align:stretch;width:100%;display:flex;flex-direction:column;align-items:stretch}
+.vbox>*{-webkit-box-flex:0;-moz-box-flex:0;box-flex:0;flex:none}
+.reverse{-webkit-box-direction:reverse;-moz-box-direction:reverse;box-direction:reverse;flex-direction:row-reverse}
+.box-flex0{-webkit-box-flex:0;-moz-box-flex:0;box-flex:0;flex:none;width:auto}
+.box-flex1{-webkit-box-flex:1;-moz-box-flex:1;box-flex:1;flex:1}
+.box-flex{-webkit-box-flex:1;-moz-box-flex:1;box-flex:1;flex:1}
+.box-flex2{-webkit-box-flex:2;-moz-box-flex:2;box-flex:2;flex:2}
+.box-group1{-webkit-box-flex-group:1;-moz-box-flex-group:1;box-flex-group:1}
+.box-group2{-webkit-box-flex-group:2;-moz-box-flex-group:2;box-flex-group:2}
+.start{-webkit-box-pack:start;-moz-box-pack:start;box-pack:start;justify-content:flex-start}
+.end{-webkit-box-pack:end;-moz-box-pack:end;box-pack:end;justify-content:flex-end}
+.center{-webkit-box-pack:center;-moz-box-pack:center;box-pack:center;justify-content:center}
+.align-start{-webkit-box-align:start;-moz-box-align:start;box-align:start;align-items:flex-start}
+.align-end{-webkit-box-align:end;-moz-box-align:end;box-align:end;align-items:flex-end}
+.align-center{-webkit-box-align:center;-moz-box-align:center;box-align:center;align-items:center}
+div.error{margin:2em;text-align:center}
+div.error>h1{font-size:500%;line-height:normal}
+div.error>p{font-size:200%;line-height:normal}
+div.traceback-wrapper{text-align:left;max-width:800px;margin:auto}
+body{background-color:#fff;position:absolute;left:0;right:0;top:0;bottom:0;overflow:visible}
+div#header{display:none}
+#ipython_notebook{padding-left:16px}
+#noscript{width:auto;padding-top:16px;padding-bottom:16px;text-align:center;font-size:22px;color:#f00;font-weight:bold}
+#ipython_notebook img{font-family:Verdana,"Helvetica Neue",Arial,Helvetica,Geneva,sans-serif;height:24px;text-decoration:none;color:#000}
+#site{width:100%;display:none}
+.ui-button .ui-button-text{padding:.2em .8em;font-size:77%}
+input.ui-button{padding:.3em .9em}
+.navbar span{margin-top:3px}
+span#login_widget{float:right}
+.nav-header{text-transform:none}
+.navbar-nobg{background-color:transparent;background-image:none}
+#header>span{margin-top:10px}
+.modal-body{max-height:500px}
+.center-nav{display:inline-block;margin-bottom:-4px}
+.alternate_upload{background-color:none;display:inline}
+.alternate_upload.form{padding:0;margin:0}
+.alternate_upload input.fileinput{background-color:#f00;position:relative;opacity:0;z-index:2;width:295px;margin-left:163px;cursor:pointer;height:26px}
+ul#tabs{margin-bottom:4px}
+ul#tabs a{padding-top:4px;padding-bottom:4px}
+ul.breadcrumb a:focus,ul.breadcrumb a:hover{text-decoration:none}
+ul.breadcrumb i.icon-home{font-size:16px;margin-right:4px}
+ul.breadcrumb span{color:#5e5e5e}
+.list_toolbar{padding:4px 0 4px 0}
+.list_toolbar [class*="span"]{min-height:26px}
+.list_header{font-weight:bold}
+.list_container{margin-top:4px;margin-bottom:20px;border:1px solid #ababab;border-radius:4px}
+.list_container>div{border-bottom:1px solid #ababab}.list_container>div:hover .list-item{background-color:#f00}
+.list_container>div:last-child{border:none}
+.list_item:hover .list_item{background-color:#ddd}
+.list_item a{text-decoration:none}
+.list_header>div,.list_item>div{padding-top:4px;padding-bottom:4px;padding-left:7px;padding-right:7px;height:22px;line-height:22px}
+.item_name{line-height:22px;height:26px}
+.item_icon{font-size:14px;color:#5e5e5e;margin-right:7px}
+.item_buttons{line-height:1em}
+.toolbar_info{height:26px;line-height:26px}
+input.nbname_input,input.engine_num_input{padding-top:3px;padding-bottom:3px;height:14px;line-height:14px;margin:0}
+input.engine_num_input{width:60px}
+.highlight_text{color:#00f}
+#project_name>.breadcrumb{padding:0;margin-bottom:0;background-color:transparent;font-weight:bold}
+.ansibold{font-weight:bold}
+.ansiblack{color:#000}
+.ansired{color:#8b0000}
+.ansigreen{color:#006400}
+.ansiyellow{color:#a52a2a}
+.ansiblue{color:#00008b}
+.ansipurple{color:#9400d3}
+.ansicyan{color:#4682b4}
+.ansigray{color:#808080}
+.ansibgblack{background-color:#000}
+.ansibgred{background-color:#f00}
+.ansibggreen{background-color:#008000}
+.ansibgyellow{background-color:#ff0}
+.ansibgblue{background-color:#00f}
+.ansibgpurple{background-color:#f0f}
+.ansibgcyan{background-color:#0ff}
+.ansibggray{background-color:#808080}
+div.cell{border:1px solid transparent;display:-webkit-box;-webkit-box-orient:vertical;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:vertical;-moz-box-align:stretch;display:box;box-orient:vertical;box-align:stretch;width:100%;display:flex;flex-direction:column;align-items:stretch}div.cell.selected{border-radius:4px;border:thin #ababab solid}
+div.cell.edit_mode{border-radius:4px;border:thin #008000 solid}
+div.cell{width:100%;padding:5px 5px 5px 0;margin:0;outline:none}
+div.prompt{min-width:11ex;padding:.4em;margin:0;font-family:monospace;text-align:right;line-height:1.231em}
+div.inner_cell{display:-webkit-box;-webkit-box-orient:vertical;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:vertical;-moz-box-align:stretch;display:box;box-orient:vertical;box-align:stretch;width:100%;display:flex;flex-direction:column;align-items:stretch;-webkit-box-flex:1;-moz-box-flex:1;box-flex:1;flex:1}
+div.prompt:empty{padding-top:0;padding-bottom:0}
+div.input{page-break-inside:avoid;display:-webkit-box;-webkit-box-orient:horizontal;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:horizontal;-moz-box-align:stretch;display:box;box-orient:horizontal;box-align:stretch;display:flex;flex-direction:row;align-items:stretch}
+div.input_area{border:1px solid #cfcfcf;border-radius:4px;background:#f7f7f7}
+div.input_prompt{color:#000080;border-top:1px solid transparent}
+.CodeMirror{line-height:1.231em;height:auto;background:none;}
+.CodeMirror-scroll{overflow-y:hidden;overflow-x:auto}
+@-moz-document {.CodeMirror-scroll{overflow-x:hidden}}.CodeMirror-lines{padding:.4em}
+.CodeMirror-linenumber{padding:0 8px 0 4px}
+.CodeMirror-gutters{border-bottom-left-radius:4px;border-top-left-radius:4px}
+.CodeMirror pre{padding:0;border:0;border-radius:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
+pre code{display:block;padding:.5em}
+.highlight-base,pre code,pre .subst,pre .tag .title,pre .lisp .title,pre .clojure .built_in,pre .nginx .title{color:#000}
+.highlight-string,pre .string,pre .constant,pre .parent,pre .tag .value,pre .rules .value,pre .rules .value .number,pre .preprocessor,pre .ruby .symbol,pre .ruby .symbol .string,pre .aggregate,pre .template_tag,pre .django .variable,pre .smalltalk .class,pre .addition,pre .flow,pre .stream,pre .bash .variable,pre .apache .tag,pre .apache .cbracket,pre .tex .command,pre .tex .special,pre .erlang_repl .function_or_atom,pre .markdown .header{color:#ba2121}
+.highlight-comment,pre .comment,pre .annotation,pre .template_comment,pre .diff .header,pre .chunk,pre .markdown .blockquote{color:#408080;font-style:italic}
+.highlight-number,pre .number,pre .date,pre .regexp,pre .literal,pre .smalltalk .symbol,pre .smalltalk .char,pre .go .constant,pre .change,pre .markdown .bullet,pre .markdown .link_url{color:#080}
+pre .label,pre .javadoc,pre .ruby .string,pre .decorator,pre .filter .argument,pre .localvars,pre .array,pre .attr_selector,pre .important,pre .pseudo,pre .pi,pre .doctype,pre .deletion,pre .envvar,pre .shebang,pre .apache .sqbracket,pre .nginx .built_in,pre .tex .formula,pre .erlang_repl .reserved,pre .prompt,pre .markdown .link_label,pre .vhdl .attribute,pre .clojure .attribute,pre .coffeescript .property{color:#88f}
+.highlight-keyword,pre .keyword,pre .id,pre .phpdoc,pre .aggregate,pre .css .tag,pre .javadoctag,pre .phpdoc,pre .yardoctag,pre .smalltalk .class,pre .winutils,pre .bash .variable,pre .apache .tag,pre .go .typename,pre .tex .command,pre .markdown .strong,pre .request,pre .status{color:#008000;font-weight:bold}
+.highlight-builtin,pre .built_in{color:#008000}
+pre .markdown .emphasis{font-style:italic}
+pre .nginx .built_in{font-weight:normal}
+pre .coffeescript .javascript,pre .javascript .xml,pre .tex .formula,pre .xml .javascript,pre .xml .vbscript,pre .xml .css,pre .xml .cdata{opacity:.5}
+.cm-s-ipython span.cm-variable{color:#000}
+.cm-s-ipython span.cm-keyword{color:#008000;font-weight:bold}
+.cm-s-ipython span.cm-number{color:#080}
+.cm-s-ipython span.cm-comment{color:#408080;font-style:italic}
+.cm-s-ipython span.cm-string{color:#ba2121}
+.cm-s-ipython span.cm-builtin{color:#008000}
+.cm-s-ipython span.cm-error{color:#f00}
+.cm-s-ipython span.cm-operator{color:#a2f;font-weight:bold}
+.cm-s-ipython span.cm-meta{color:#a2f}
+.cm-s-ipython span.cm-tab{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAMCAYAAAAkuj5RAAAAAXNSR0IArs4c6QAAAGFJREFUSMft1LsRQFAQheHPowAKoACx3IgEKtaEHujDjORSgWTH/ZOdnZOcM/sgk/kFFWY0qV8foQwS4MKBCS3qR6ixBJvElOobYAtivseIE120FaowJPN75GMu8j/LfMwNjh4HUpwg4LUAAAAASUVORK5CYII=);background-position:right;background-repeat:no-repeat}
+div.output_wrapper{position:relative;display:-webkit-box;-webkit-box-orient:vertical;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:vertical;-moz-box-align:stretch;display:box;box-orient:vertical;box-align:stretch;width:100%;display:flex;flex-direction:column;align-items:stretch}
+div.output_scroll{height:24em;width:100%;overflow:auto;border-radius:4px;-webkit-box-shadow:inset 0 2px 8px rgba(0,0,0,0.8);-moz-box-shadow:inset 0 2px 8px rgba(0,0,0,0.8);box-shadow:inset 0 2px 8px rgba(0,0,0,0.8);display:block}
+div.output_collapsed{margin:0;padding:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:vertical;-moz-box-align:stretch;display:box;box-orient:vertical;box-align:stretch;width:100%;display:flex;flex-direction:column;align-items:stretch}
+div.out_prompt_overlay{height:100%;padding:0 .4em;position:absolute;border-radius:4px}
+div.out_prompt_overlay:hover{-webkit-box-shadow:inset 0 0 1px #000;-moz-box-shadow:inset 0 0 1px #000;box-shadow:inset 0 0 1px #000;background:rgba(240,240,240,0.5)}
+div.output_prompt{color:#8b0000}
+div.output_area{padding:0;page-break-inside:avoid;display:-webkit-box;-webkit-box-orient:horizontal;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:horizontal;-moz-box-align:stretch;display:box;box-orient:horizontal;box-align:stretch;display:flex;flex-direction:row;align-items:stretch}div.output_area .MathJax_Display{text-align:left !important}
+div.output_area .rendered_html table{margin-left:0;margin-right:0}
+div.output_area .rendered_html img{margin-left:0;margin-right:0}
+.output{display:-webkit-box;-webkit-box-orient:vertical;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:vertical;-moz-box-align:stretch;display:box;box-orient:vertical;box-align:stretch;width:100%;display:flex;flex-direction:column;align-items:stretch}
+div.output_area pre{font-family:monospace;margin:0;padding:0;border:0;font-size:100%;vertical-align:baseline;color:#000;background-color:transparent;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;line-height:inherit}
+div.output_subarea{padding:.4em .4em 0 .4em;-webkit-box-flex:1;-moz-box-flex:1;box-flex:1;flex:1}
+div.output_text{text-align:left;color:#000;font-family:monospace;line-height:1.231em}
+div.output_stderr{background:#fdd;}
+div.output_latex{text-align:left}
+div.output_javascript:empty{padding:0}
+.js-error{color:#8b0000}
+div.raw_input{padding-top:0;padding-bottom:0;height:1em;line-height:1em;font-family:monospace}
+span.input_prompt{font-family:inherit}
+input.raw_input{font-family:inherit;font-size:inherit;color:inherit;width:auto;margin:-2px 0 0 1px;padding-left:1px;padding-top:2px;height:1em}
+p.p-space{margin-bottom:10px}
+.rendered_html{color:#000;}.rendered_html em{font-style:italic}
+.rendered_html strong{font-weight:bold}
+.rendered_html u{text-decoration:underline}
+.rendered_html :link{text-decoration:underline}
+.rendered_html :visited{text-decoration:underline}
+.rendered_html h1{font-size:185.7%;margin:1.08em 0 0 0;font-weight:bold;line-height:1}
+.rendered_html h2{font-size:157.1%;margin:1.27em 0 0 0;font-weight:bold;line-height:1}
+.rendered_html h3{font-size:128.6%;margin:1.55em 0 0 0;font-weight:bold;line-height:1}
+.rendered_html h4{font-size:100%;margin:2em 0 0 0;font-weight:bold;line-height:1}
+.rendered_html h5{font-size:100%;margin:2em 0 0 0;font-weight:bold;line-height:1;font-style:italic}
+.rendered_html h6{font-size:100%;margin:2em 0 0 0;font-weight:bold;line-height:1;font-style:italic}
+.rendered_html h1:first-child{margin-top:.538em}
+.rendered_html h2:first-child{margin-top:.636em}
+.rendered_html h3:first-child{margin-top:.777em}
+.rendered_html h4:first-child{margin-top:1em}
+.rendered_html h5:first-child{margin-top:1em}
+.rendered_html h6:first-child{margin-top:1em}
+.rendered_html ul{list-style:disc;margin:0 2em}
+.rendered_html ul ul{list-style:square;margin:0 2em}
+.rendered_html ul ul ul{list-style:circle;margin:0 2em}
+.rendered_html ol{list-style:decimal;margin:0 2em}
+.rendered_html ol ol{list-style:upper-alpha;margin:0 2em}
+.rendered_html ol ol ol{list-style:lower-alpha;margin:0 2em}
+.rendered_html ol ol ol ol{list-style:lower-roman;margin:0 2em}
+.rendered_html ol ol ol ol ol{list-style:decimal;margin:0 2em}
+.rendered_html *+ul{margin-top:1em}
+.rendered_html *+ol{margin-top:1em}
+.rendered_html hr{color:#000;background-color:#000}
+.rendered_html pre{margin:1em 2em}
+.rendered_html pre,.rendered_html code{border:0;background-color:#fff;color:#000;font-size:100%;padding:0}
+.rendered_html blockquote{margin:1em 2em}
+.rendered_html table{margin-left:auto;margin-right:auto;border:1px solid #000;border-collapse:collapse}
+.rendered_html tr,.rendered_html th,.rendered_html td{border:1px solid #000;border-collapse:collapse;margin:1em 2em}
+.rendered_html td,.rendered_html th{text-align:left;vertical-align:middle;padding:4px}
+.rendered_html th{font-weight:bold}
+.rendered_html *+table{margin-top:1em}
+.rendered_html p{text-align:justify}
+.rendered_html *+p{margin-top:1em}
+.rendered_html img{display:block;margin-left:auto;margin-right:auto}
+.rendered_html *+img{margin-top:1em}
+div.text_cell{padding:5px 5px 5px 0;display:-webkit-box;-webkit-box-orient:horizontal;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:horizontal;-moz-box-align:stretch;display:box;box-orient:horizontal;box-align:stretch;display:flex;flex-direction:row;align-items:stretch}
+div.text_cell_input{color:#000;border:1px solid #cfcfcf;border-radius:4px;background:#f7f7f7}
+div.text_cell_render{outline:none;resize:none;width:inherit;border-style:none;padding:.5em .5em .5em .4em;color:#000}
+a.anchor-link:link{text-decoration:none;padding:0 20px;visibility:hidden}
+h1:hover .anchor-link,h2:hover .anchor-link,h3:hover .anchor-link,h4:hover .anchor-link,h5:hover .anchor-link,h6:hover .anchor-link{visibility:visible}
+div.cell.text_cell.rendered{padding:0}
+.widget-area{page-break-inside:avoid;display:-webkit-box;-webkit-box-orient:horizontal;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:horizontal;-moz-box-align:stretch;display:box;box-orient:horizontal;box-align:stretch;display:flex;flex-direction:row;align-items:stretch}.widget-area .widget-subarea{padding:.44em .4em .4em 1px;margin-left:6px;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;display:-webkit-box;-webkit-box-orient:vertical;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:vertical;-moz-box-align:stretch;display:box;box-orient:vertical;box-align:stretch;width:100%;display:flex;flex-direction:column;align-items:stretch;-webkit-box-flex:2;-moz-box-flex:2;box-flex:2;flex:2;-webkit-box-align:start;-moz-box-align:start;box-align:start;align-items:flex-start}
+.widget-hlabel{min-width:10ex;padding-right:8px;padding-top:3px;text-align:right;vertical-align:text-top}
+.widget-vlabel{padding-bottom:5px;text-align:center;vertical-align:text-bottom}
+.widget-hreadout{padding-left:8px;padding-top:3px;text-align:left;vertical-align:text-top}
+.widget-vreadout{padding-top:5px;text-align:center;vertical-align:text-top}
+.slide-track{border:1px solid #ccc;background:#fff;border-radius:4px;}
+.widget-hslider{padding-left:8px;padding-right:5px;overflow:visible;width:348px;height:5px;max-height:5px;margin-top:11px;border:1px solid #ccc;background:#fff;border-radius:4px;display:-webkit-box;-webkit-box-orient:horizontal;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:horizontal;-moz-box-align:stretch;display:box;box-orient:horizontal;box-align:stretch;display:flex;flex-direction:row;align-items:stretch}.widget-hslider .ui-slider{border:0 !important;background:none !important;display:-webkit-box;-webkit-box-orient:horizontal;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:horizontal;-moz-box-align:stretch;display:box;box-orient:horizontal;box-align:stretch;display:flex;flex-direction:row;align-items:stretch;-webkit-box-flex:1;-moz-box-flex:1;box-flex:1;flex:1}.widget-hslider .ui-slider .ui-slider-handle{width:14px !important;height:28px !important;margin-top:-8px !important}
+.widget-vslider{padding-bottom:8px;overflow:visible;width:5px;max-width:5px;height:250px;margin-left:12px;border:1px solid #ccc;background:#fff;border-radius:4px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:vertical;-moz-box-align:stretch;display:box;box-orient:vertical;box-align:stretch;width:100%;display:flex;flex-direction:column;align-items:stretch}.widget-vslider .ui-slider{border:0 !important;background:none !important;margin-left:-4px;margin-top:5px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:vertical;-moz-box-align:stretch;display:box;box-orient:vertical;box-align:stretch;width:100%;display:flex;flex-direction:column;align-items:stretch;-webkit-box-flex:1;-moz-box-flex:1;box-flex:1;flex:1}.widget-vslider .ui-slider .ui-slider-handle{width:28px !important;height:14px !important;margin-left:-9px}
+.widget-text{width:350px;margin-bottom:0}
+.widget-listbox{width:364px;margin-bottom:0}
+.widget-numeric-text{width:150px}
+.widget-progress{width:363px}.widget-progress .bar{-webkit-transition:none;-moz-transition:none;-ms-transition:none;-o-transition:none;transition:none}
+.widget-combo-btn{min-width:138px;}
+.widget-box{margin:5px;-webkit-box-pack:start;-moz-box-pack:start;box-pack:start;justify-content:flex-start;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-webkit-box-align:start;-moz-box-align:start;box-align:start;align-items:flex-start}
+.widget-hbox{margin:5px;-webkit-box-pack:start;-moz-box-pack:start;box-pack:start;justify-content:flex-start;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-webkit-box-align:start;-moz-box-align:start;box-align:start;align-items:flex-start;display:-webkit-box;-webkit-box-orient:horizontal;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:horizontal;-moz-box-align:stretch;display:box;box-orient:horizontal;box-align:stretch;display:flex;flex-direction:row;align-items:stretch}
+.widget-hbox-single{margin:5px;-webkit-box-pack:start;-moz-box-pack:start;box-pack:start;justify-content:flex-start;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-webkit-box-align:start;-moz-box-align:start;box-align:start;align-items:flex-start;display:-webkit-box;-webkit-box-orient:horizontal;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:horizontal;-moz-box-align:stretch;display:box;box-orient:horizontal;box-align:stretch;display:flex;flex-direction:row;align-items:stretch;height:30px}
+.widget-vbox{margin:5px;-webkit-box-pack:start;-moz-box-pack:start;box-pack:start;justify-content:flex-start;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-webkit-box-align:start;-moz-box-align:start;box-align:start;align-items:flex-start;display:-webkit-box;-webkit-box-orient:vertical;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:vertical;-moz-box-align:stretch;display:box;box-orient:vertical;box-align:stretch;width:100%;display:flex;flex-direction:column;align-items:stretch}
+.widget-vbox-single{margin:5px;-webkit-box-pack:start;-moz-box-pack:start;box-pack:start;justify-content:flex-start;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-webkit-box-align:start;-moz-box-align:start;box-align:start;align-items:flex-start;display:-webkit-box;-webkit-box-orient:vertical;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:vertical;-moz-box-align:stretch;display:box;box-orient:vertical;box-align:stretch;width:100%;display:flex;flex-direction:column;align-items:stretch;width:30px}
+.widget-modal{overflow:hidden;position:absolute !important;top:0;left:0;margin-left:0 !important}
+.widget-modal-body{max-height:none !important}
+.widget-container{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-webkit-box-align:start;-moz-box-align:start;box-align:start;align-items:flex-start}
+.docked-widget-modal{overflow:hidden;position:relative !important;top:0 !important;left:0 !important;margin-left:0 !important}
+body{background-color:#fff}
+body.notebook_app{overflow:hidden}
+span#notebook_name{height:1em;line-height:1em;padding:3px;border:none;font-size:146.5%}
+div#notebook_panel{margin:0 0 0 0;padding:0;-webkit-box-shadow:0 -1px 10px rgba(0,0,0,0.1);-moz-box-shadow:0 -1px 10px rgba(0,0,0,0.1);box-shadow:0 -1px 10px rgba(0,0,0,0.1)}
+div#notebook{overflow-y:scroll;overflow-x:auto;width:100%;padding:1em 0 1em 0;margin:0;border-top:1px solid #ababab;outline:none;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}
+div.ui-widget-content{border:1px solid #ababab;outline:none}
+pre.dialog{background-color:#f7f7f7;border:1px solid #ddd;border-radius:4px;padding:.4em;padding-left:2em}
+p.dialog{padding:.2em}
+pre,code,kbd,samp{white-space:pre-wrap}
+#fonttest{font-family:monospace}
+p{margin-bottom:0}
+.end_space{height:200px}
+.celltoolbar{border:thin solid #cfcfcf;border-bottom:none;background:#eee;border-radius:3px 3px 0 0;width:100%;-webkit-box-pack:end;height:22px;display:-webkit-box;-webkit-box-orient:horizontal;-webkit-box-align:stretch;display:-moz-box;-moz-box-orient:horizontal;-moz-box-align:stretch;display:box;box-orient:horizontal;box-align:stretch;display:flex;flex-direction:row;align-items:stretch;-webkit-box-direction:reverse;-moz-box-direction:reverse;box-direction:reverse;flex-direction:row-reverse}
+.ctb_hideshow{display:none;vertical-align:bottom;padding-right:2px}
+.celltoolbar>div{padding-top:0}
+.ctb_global_show .ctb_show.ctb_hideshow{display:block}
+.ctb_global_show .ctb_show+.input_area,.ctb_global_show .ctb_show+div.text_cell_input{border-top-right-radius:0;border-top-left-radius:0}
+.celltoolbar .button_container select{margin:10px;margin-top:1px;margin-bottom:0;padding:0;font-size:87%;width:auto;display:inline-block;height:18px;line-height:18px;vertical-align:top}
+.celltoolbar label{display:inline-block;height:15px;line-height:15px;vertical-align:top}
+.celltoolbar label span{font-size:85%}
+.celltoolbar input[type=checkbox]{margin:0;margin-left:4px;margin-right:4px}
+.celltoolbar .ui-button{border:none;vertical-align:top;height:20px;min-width:30px}
+.completions{position:absolute;z-index:10;overflow:hidden;border:1px solid #ababab;border-radius:4px;-webkit-box-shadow:0 6px 10px -1px #adadad;-moz-box-shadow:0 6px 10px -1px #adadad;box-shadow:0 6px 10px -1px #adadad}
+.completions select{background:#fff;outline:none;border:none;padding:0;margin:0;overflow:auto;font-family:monospace;font-size:110%;color:#000}
+.completions select option.context{color:#0064cd}
+#menubar .navbar-inner{min-height:28px;border-top:1px;border-radius:0 0 4px 4px}
+#menubar .navbar{margin-bottom:8px}
+.nav-wrapper{border-bottom:1px solid #d4d4d4}
+#menubar li.dropdown{line-height:12px}
+i.menu-icon{padding-top:4px}
+ul#help_menu li a{overflow:hidden;padding-right:2.2em}ul#help_menu li a i{margin-right:-1.2em}
+#notification_area{z-index:10}
+.indicator_area{color:#777;padding:4px 3px;margin:0;width:11px;z-index:10;text-align:center}
+#kernel_indicator{margin-right:-16px}
+.notification_widget{color:#777;padding:1px 12px;margin:2px 4px;z-index:10;border:1px solid #ccc;border-radius:4px;background:rgba(240,240,240,0.5)}.notification_widget.span{padding-right:2px}
+div#pager_splitter{height:8px}
+#pager-container{position:relative;padding:15px 0}
+div#pager{overflow:auto;display:none}div#pager pre{font-size:13px;line-height:1.231em;color:#000;background-color:#f7f7f7;padding:.4em}
+.shortcut_key{display:inline-block;width:15ex;text-align:right;font-family:monospace}
+.shortcut_descr{display:inline-block}
+span#save_widget{padding:0 5px;margin-top:12px}
+span#checkpoint_status,span#autosave_status{font-size:small}
+@media (max-width:767px){span#save_widget{font-size:small} span#checkpoint_status,span#autosave_status{font-size:x-small}}@media (max-width:767px){span#checkpoint_status,span#autosave_status{display:none}}@media (min-width:768px) and (max-width:979px){span#checkpoint_status{display:none} span#autosave_status{font-size:x-small}}.toolbar{padding:0 10px;margin-top:-5px}.toolbar select,.toolbar label{width:auto;height:26px;vertical-align:middle;margin-right:2px;margin-bottom:0;display:inline;font-size:92%;margin-left:.3em;margin-right:.3em;padding:0;padding-top:3px}
+.toolbar .btn{padding:2px 8px}
+.toolbar .btn-group{margin-top:0}
+.toolbar-inner{border:none !important;-webkit-box-shadow:none !important;-moz-box-shadow:none !important;box-shadow:none !important}
+#maintoolbar{margin-bottom:0}
+@-moz-keyframes fadeOut{from{opacity:1} to{opacity:0}}@-webkit-keyframes fadeOut{from{opacity:1} to{opacity:0}}@-moz-keyframes fadeIn{from{opacity:0} to{opacity:1}}@-webkit-keyframes fadeIn{from{opacity:0} to{opacity:1}}.bigtooltip{overflow:auto;height:200px;-webkit-transition-property:height;-webkit-transition-duration:500ms;-moz-transition-property:height;-moz-transition-duration:500ms;transition-property:height;transition-duration:500ms}
+.smalltooltip{-webkit-transition-property:height;-webkit-transition-duration:500ms;-moz-transition-property:height;-moz-transition-duration:500ms;transition-property:height;transition-duration:500ms;text-overflow:ellipsis;overflow:hidden;height:80px}
+.tooltipbuttons{position:absolute;padding-right:15px;top:0;right:0}
+.tooltiptext{padding-right:30px}
+.ipython_tooltip{max-width:700px;-webkit-animation:fadeOut 400ms;-moz-animation:fadeOut 400ms;animation:fadeOut 400ms;-webkit-animation:fadeIn 400ms;-moz-animation:fadeIn 400ms;animation:fadeIn 400ms;vertical-align:middle;background-color:#f7f7f7;overflow:visible;border:#ababab 1px solid;outline:none;padding:3px;margin:0;padding-left:7px;font-family:monospace;min-height:50px;-moz-box-shadow:0 6px 10px -1px #adadad;-webkit-box-shadow:0 6px 10px -1px #adadad;box-shadow:0 6px 10px -1px #adadad;border-radius:4px;position:absolute;z-index:2}.ipython_tooltip a{float:right}
+.ipython_tooltip .tooltiptext pre{border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;font-size:100%;background-color:#f7f7f7}
+.pretooltiparrow{left:0;margin:0;top:-16px;width:40px;height:16px;overflow:hidden;position:absolute}
+.pretooltiparrow:before{background-color:#f7f7f7;border:1px #ababab solid;z-index:11;content:"";position:absolute;left:15px;top:10px;width:25px;height:25px;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg)}
+
+    </style>
+<style type="text/css">
+    .highlight .hll { background-color: #ffffcc }
+.highlight  { background: #f8f8f8; }
+.highlight .c { color: #408080; font-style: italic } /* Comment */
+.highlight .err { border: 1px solid #FF0000 } /* Error */
+.highlight .k { color: #008000; font-weight: bold } /* Keyword */
+.highlight .o { color: #666666 } /* Operator */
+.highlight .cm { color: #408080; font-style: italic } /* Comment.Multiline */
+.highlight .cp { color: #BC7A00 } /* Comment.Preproc */
+.highlight .c1 { color: #408080; font-style: italic } /* Comment.Single */
+.highlight .cs { color: #408080; font-style: italic } /* Comment.Special */
+.highlight .gd { color: #A00000 } /* Generic.Deleted */
+.highlight .ge { font-style: italic } /* Generic.Emph */
+.highlight .gr { color: #FF0000 } /* Generic.Error */
+.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
+.highlight .gi { color: #00A000 } /* Generic.Inserted */
+.highlight .go { color: #888888 } /* Generic.Output */
+.highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
+.highlight .gs { font-weight: bold } /* Generic.Strong */
+.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
+.highlight .gt { color: #0044DD } /* Generic.Traceback */
+.highlight .kc { color: #008000; font-weight: bold } /* Keyword.Constant */
+.highlight .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */
+.highlight .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */
+.highlight .kp { color: #008000 } /* Keyword.Pseudo */
+.highlight .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */
+.highlight .kt { color: #B00040 } /* Keyword.Type */
+.highlight .m { color: #666666 } /* Literal.Number */
+.highlight .s { color: #BA2121 } /* Literal.String */
+.highlight .na { color: #7D9029 } /* Name.Attribute */
+.highlight .nb { color: #008000 } /* Name.Builtin */
+.highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */
+.highlight .no { color: #880000 } /* Name.Constant */
+.highlight .nd { color: #AA22FF } /* Name.Decorator */
+.highlight .ni { color: #999999; font-weight: bold } /* Name.Entity */
+.highlight .ne { color: #D2413A; font-weight: bold } /* Name.Exception */
+.highlight .nf { color: #0000FF } /* Name.Function */
+.highlight .nl { color: #A0A000 } /* Name.Label */
+.highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
+.highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */
+.highlight .nv { color: #19177C } /* Name.Variable */
+.highlight .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */
+.highlight .w { color: #bbbbbb } /* Text.Whitespace */
+.highlight .mf { color: #666666 } /* Literal.Number.Float */
+.highlight .mh { color: #666666 } /* Literal.Number.Hex */
+.highlight .mi { color: #666666 } /* Literal.Number.Integer */
+.highlight .mo { color: #666666 } /* Literal.Number.Oct */
+.highlight .sb { color: #BA2121 } /* Literal.String.Backtick */
+.highlight .sc { color: #BA2121 } /* Literal.String.Char */
+.highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
+.highlight .s2 { color: #BA2121 } /* Literal.String.Double */
+.highlight .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
+.highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */
+.highlight .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
+.highlight .sx { color: #008000 } /* Literal.String.Other */
+.highlight .sr { color: #BB6688 } /* Literal.String.Regex */
+.highlight .s1 { color: #BA2121 } /* Literal.String.Single */
+.highlight .ss { color: #19177C } /* Literal.String.Symbol */
+.highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */
+.highlight .vc { color: #19177C } /* Name.Variable.Class */
+.highlight .vg { color: #19177C } /* Name.Variable.Global */
+.highlight .vi { color: #19177C } /* Name.Variable.Instance */
+.highlight .il { color: #666666 } /* Literal.Number.Integer.Long */
+    </style>
+
+
+<style type="text/css">
+/* Overrides of notebook CSS for static HTML export */
+body {
+  overflow: visible;
+  padding: 8px;
+}
+.input_area {
+  padding: 0.2em;
+}
+
+pre {
+  padding: 0.2em;
+  border: none;
+  margin: 0px;
+  font-size: 13px;
+}
+</style>
+
+<!-- Custom stylesheet, it must be in the same directory as the html file -->
+<link rel="stylesheet" href="custom.css">
+
+<!-- Loading mathjax macro -->
+<!-- MathJax configuration -->
+    <script type="text/x-mathjax-config">
+    MathJax.Hub.Config({
+        tex2jax: {
+            inlineMath: [ ['$','$'], ["\\(","\\)"] ],
+            displayMath: [ ['$$','$$'], ["\\[","\\]"] ],
+            processEscapes: true,
+            processEnvironments: true
+        },
+        // Center justify equations in code and markdown cells. Elsewhere
+        // we use CSS to left justify single line equations in code cells.
+        displayAlign: 'center',
+        "HTML-CSS": {
+            styles: {'.MathJax_Display': {"margin": 0}},
+            linebreaks: { automatic: true }
+        }
+    });
+    </script>
+    <!-- End of mathjax configuration -->
+
+    <script>
+    //  We wait for the onload function to load MathJax after the page is completely loaded.
+    //  MathJax is loaded 1 unit of time after the page is ready.
+    //  This hack prevent problems when you load multiple js files.
+
+    window.onload = function () {
+      setTimeout(function () {
+        var script = document.createElement("script");
+        script.type = "text/javascript";
+        script.src  = "https://c328740.ssl.cf1.rackcdn.com/mathjax/latest/MathJax.js?config=TeX-AMS_HTML";
+        document.getElementsByTagName("head")[0].appendChild(script);
+      },1)
+    }
+    </script>
+
+</head>
+<body>
+
+<div class="input">
+<div class="prompt input_prompt">
+</div>
+<div class="inner_cell">
+<div class="text_cell_render border-box-sizing rendered_html">
+<h1 id="multiple-plots-with-rlang-qq">Multiple plots with Rlang-QQ</h1>
+<p>An example of <code>Rlang-QQ-0.1.2.0</code>, which supports multiple figures.</p>
+<p>First a pile of imports needed:</p>
+</div>
+</div>
+</div>
+<div class="cell border-box-sizing code_cell">
+<div class="input">
+<div class="prompt input_prompt">
+In&nbsp;[1]:
+</div>
+<div class="input_area box-flex1">
+<div class="highlight"><pre><span class="kt">:</span><span class="n">set</span> <span class="o">-</span><span class="kt">XQuasiQuotes</span> <span class="o">-</span><span class="kt">XTupleSections</span> <span class="o">-</span><span class="kt">XViewPatterns</span>
+<span class="kr">import</span> <span class="nn">IHaskell.Display</span> <span class="c1">-- shouldn&#39;t be needed but it turns out that it is essential</span>
+<span class="kr">import</span> <span class="nn">IHaskell.Display.Rlangqq</span> <span class="p">()</span> <span class="c1">-- to check it&#39;s installed</span>
+<span class="kr">import</span> <span class="nn">Data.Monoid</span>
+<span class="kr">import</span> <span class="nn">Control.Applicative</span>
+<span class="kr">import</span> <span class="nn">Data.List</span>
+</pre></div>
+
+</div>
+</div>
+
+</div>
+<div class="input">
+<div class="prompt input_prompt">
+</div>
+<div class="inner_cell">
+<div class="text_cell_render border-box-sizing rendered_html">
+<p>Rlang-QQ saves intermediate files. There is some code hidden in <code>IHaskell.Display.RlangQQ</code> and <code>RlangQQ.ParseKnitted</code> which gets those messages/warnings/plots.</p>
+</div>
+</div>
+</div>
+<div class="input">
+<div class="prompt input_prompt">
+</div>
+<div class="inner_cell">
+<div class="text_cell_render border-box-sizing rendered_html">
+<p>Just some more of the same integration stuff that may be easier to think about because it's written in haskell</p>
+</div>
+</div>
+</div>
+<div class="cell border-box-sizing code_cell">
+<div class="input">
+<div class="prompt input_prompt">
+In&nbsp;[2]:
+</div>
+<div class="input_area box-flex1">
+<div class="highlight"><pre><span class="c1">-- | trapezoid rule. doesn&#39;t reuse previous values</span>
+<span class="nf">trap</span> <span class="ow">::</span> <span class="kt">Fractional</span> <span class="n">a</span>
+    <span class="ow">=&gt;</span> <span class="p">(</span><span class="n">a</span> <span class="ow">-&gt;</span> <span class="n">a</span><span class="p">)</span> <span class="c1">-- ^ function</span>
+    <span class="ow">-&gt;</span> <span class="n">a</span> <span class="c1">-- ^ lower bound</span>
+    <span class="ow">-&gt;</span> <span class="n">a</span> <span class="c1">-- ^ upepr bound</span>
+    <span class="ow">-&gt;</span> <span class="kt">Int</span> <span class="c1">-- ^ number of panels to divide the interval into</span>
+    <span class="ow">-&gt;</span> <span class="n">a</span> <span class="c1">-- ^ integral approximation</span>
+<span class="nf">trap</span> <span class="n">f</span> <span class="n">a</span> <span class="n">b</span> <span class="n">n</span> <span class="ow">=</span>
+    <span class="kr">let</span> <span class="n">h</span> <span class="ow">=</span> <span class="p">(</span><span class="n">b</span> <span class="o">-</span> <span class="n">a</span><span class="p">)</span> <span class="o">/</span> <span class="n">fromIntegral</span> <span class="n">n</span>
+        <span class="n">xs</span> <span class="ow">=</span> <span class="n">take</span> <span class="p">(</span><span class="n">n</span><span class="o">-</span><span class="mi">1</span><span class="p">)</span> <span class="o">$</span> <span class="n">iterate</span> <span class="p">(</span><span class="n">h</span><span class="o">+</span><span class="p">)</span> <span class="p">(</span><span class="n">a</span><span class="o">+</span><span class="n">h</span><span class="p">)</span>
+            <span class="c1">-- easier to see as [a+h, a+2*h .. b-h])</span>
+            <span class="c1">-- but some interval arithmetic doesn&#39;t support [a..b]</span>
+    <span class="kr">in</span> <span class="n">h</span> <span class="o">*</span> <span class="n">foldl&#39;</span> <span class="p">(</span><span class="nf">\</span><span class="n">s</span> <span class="n">x</span> <span class="ow">-&gt;</span> <span class="n">s</span> <span class="o">+</span> <span class="n">f</span> <span class="n">x</span><span class="p">)</span> <span class="p">((</span><span class="n">f</span> <span class="n">a</span> <span class="o">+</span> <span class="n">f</span> <span class="n">b</span><span class="p">)</span> <span class="o">/</span> <span class="mi">2</span><span class="p">)</span> <span class="n">xs</span>
+</pre></div>
+
+</div>
+</div>
+
+</div>
+<div class="cell border-box-sizing code_cell">
+<div class="input">
+<div class="prompt input_prompt">
+In&nbsp;[7]:
+</div>
+<div class="input_area box-flex1">
+<div class="highlight"><pre><span class="nf">improve</span> <span class="ow">::</span> <span class="kt">Fractional</span> <span class="n">a</span>
+    <span class="ow">=&gt;</span> <span class="kt">Int</span> <span class="c1">-- n</span>
+    <span class="ow">-&gt;</span> <span class="n">a</span> <span class="c1">-- O(h^n) estimate with step size h/2</span>
+    <span class="ow">-&gt;</span> <span class="n">a</span> <span class="c1">-- O(h^n) estimate with step size h</span>
+    <span class="ow">-&gt;</span> <span class="n">a</span> <span class="c1">-- O(h^(n+1)) estimate</span>
+<span class="nf">improve</span> <span class="n">n</span> <span class="n">x</span> <span class="n">y</span> <span class="ow">=</span> <span class="kr">let</span> <span class="n">c</span> <span class="ow">=</span> <span class="mi">4</span><span class="o">^</span><span class="p">(</span><span class="n">n</span><span class="o">-</span><span class="mi">1</span><span class="p">)</span> <span class="kr">in</span> <span class="p">(</span><span class="n">c</span><span class="o">*</span><span class="n">x</span> <span class="o">-</span> <span class="n">y</span><span class="p">)</span> <span class="o">/</span> <span class="p">(</span><span class="n">c</span> <span class="o">-</span> <span class="mi">1</span><span class="p">)</span>
+
+<span class="nf">rombM</span> <span class="ow">::</span> <span class="kt">Fractional</span> <span class="n">a</span>
+    <span class="ow">=&gt;</span> <span class="p">(</span><span class="n">a</span> <span class="ow">-&gt;</span> <span class="n">a</span><span class="p">)</span>
+    <span class="ow">-&gt;</span> <span class="n">a</span>
+    <span class="ow">-&gt;</span> <span class="n">a</span>
+    <span class="ow">-&gt;</span> <span class="p">[[</span><span class="n">a</span><span class="p">]]</span>
+<span class="nf">rombM</span> <span class="n">f</span> <span class="n">a</span> <span class="n">b</span> <span class="ow">=</span>
+    <span class="kr">let</span> <span class="n">is</span> <span class="ow">=</span> <span class="n">map</span> <span class="p">(</span><span class="nf">\</span><span class="n">n</span> <span class="ow">-&gt;</span> <span class="n">trap</span> <span class="n">f</span> <span class="n">a</span> <span class="n">b</span> <span class="p">(</span><span class="mi">2</span><span class="o">^</span><span class="n">n</span><span class="p">))</span> <span class="p">[</span><span class="mi">0</span><span class="o">..</span><span class="p">]</span>
+    <span class="kr">in</span> <span class="n">map</span> <span class="n">snd</span>
+        <span class="o">$</span> <span class="n">iterate</span>
+            <span class="p">(</span><span class="nf">\</span><span class="p">(</span><span class="n">n</span><span class="p">,</span><span class="n">s</span><span class="p">)</span> <span class="ow">-&gt;</span> <span class="p">(</span><span class="n">n</span><span class="o">+</span><span class="mi">1</span><span class="p">,</span> <span class="n">zipWith</span> <span class="p">(</span><span class="n">improve</span> <span class="n">n</span><span class="p">)</span> <span class="p">(</span><span class="n">tail</span> <span class="n">s</span><span class="p">)</span> <span class="n">s</span><span class="p">))</span>
+            <span class="p">(</span><span class="mi">2</span><span class="p">,</span><span class="n">is</span><span class="p">)</span>
+
+<span class="nf">romb</span> <span class="ow">::</span> <span class="kt">Fractional</span> <span class="n">a</span>
+    <span class="ow">=&gt;</span> <span class="p">(</span><span class="n">a</span> <span class="ow">-&gt;</span> <span class="n">a</span><span class="p">)</span>
+    <span class="ow">-&gt;</span> <span class="n">a</span>
+    <span class="ow">-&gt;</span> <span class="n">a</span>
+    <span class="ow">-&gt;</span> <span class="p">[</span><span class="n">a</span><span class="p">]</span> <span class="c1">-- successive approximations</span>
+<span class="nf">romb</span> <span class="n">f</span> <span class="n">a</span> <span class="n">b</span> <span class="ow">=</span> <span class="n">map</span> <span class="n">head</span> <span class="o">$</span> <span class="n">rombM</span> <span class="n">f</span> <span class="n">a</span> <span class="n">b</span>
+</pre></div>
+
+</div>
+</div>
+
+</div>
+<div class="cell border-box-sizing code_cell">
+<div class="input">
+<div class="prompt input_prompt">
+In&nbsp;[3]:
+</div>
+<div class="input_area box-flex1">
+<div class="highlight"><pre><span class="nf">xs</span> <span class="ow">=</span> <span class="n">take</span> <span class="mi">5</span> <span class="o">$</span> <span class="n">romb</span> <span class="n">exp</span> <span class="mi">0</span> <span class="mi">1</span> <span class="ow">::</span> <span class="p">[</span><span class="kt">Double</span><span class="p">]</span>
+
+<span class="nf">print</span> <span class="n">xs</span>
+</pre></div>
+
+</div>
+</div>
+
+<div class="output_wrapper">
+<div class="output">
+
+
+<div class="output_area"><div class="prompt"></div>
+<div class="box-flex1 output_subarea output_display_data">
+
+
+<pre>
+[1.8591409142295225,1.7188611518765928,1.7182826879247577,1.7182818287945305,1.7182818284590786]
+</pre>
+
+</div>
+</div>
+
+</div>
+</div>
+
+</div>
+<div class="cell border-box-sizing code_cell">
+<div class="input">
+<div class="prompt input_prompt">
+In&nbsp;[4]:
+</div>
+<div class="input_area box-flex1">
+<div class="highlight"><pre><span class="nf">sse</span> <span class="ow">&lt;-</span> <span class="kr">do</span>
+ <span class="p">[</span><span class="n">pun</span><span class="o">|</span> <span class="p">(</span><span class="n">sse</span><span class="p">)</span> <span class="o">|</span><span class="p">]</span> <span class="ow">&lt;-</span> <span class="p">[</span><span class="n">rDisp</span><span class="o">|</span>
+    <span class="n">m</span> <span class="ow">&lt;-</span> <span class="n">lm</span><span class="p">(</span> <span class="n">log</span><span class="p">(</span><span class="o">$</span><span class="p">(</span><span class="n">xs</span><span class="p">)</span> <span class="o">/</span> <span class="p">(</span><span class="n">exp</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span><span class="o">-</span><span class="mi">1</span><span class="p">))</span> <span class="o">~</span> <span class="kt">I</span><span class="p">(</span><span class="mi">1</span><span class="kt">:</span><span class="n">length</span><span class="p">(</span><span class="o">$</span><span class="p">(</span><span class="n">xs</span><span class="p">))))</span>
+    <span class="n">plot</span><span class="p">(</span><span class="n">m</span><span class="p">,</span> <span class="n">which</span><span class="ow">=</span><span class="mi">1</span><span class="kt">:</span><span class="mi">2</span><span class="p">)</span>
+    <span class="n">print</span><span class="p">(</span><span class="n">predict</span><span class="p">(</span><span class="n">m</span><span class="p">))</span>
+    <span class="n">hs_sse</span> <span class="ow">&lt;-</span> <span class="n">sum</span><span class="p">(</span> <span class="n">resid</span><span class="p">(</span><span class="n">m</span><span class="p">)</span><span class="o">^</span><span class="mi">2</span> <span class="p">)</span>
+    <span class="o">|</span><span class="p">]</span>
+ <span class="n">return</span> <span class="p">(</span><span class="n">sse</span> <span class="ow">::</span> <span class="kt">Double</span><span class="p">)</span>
+<span class="nb">()</span> <span class="c1">-- needed to force a display</span>
+</pre></div>
+
+</div>
+</div>
+
+<div class="output_wrapper">
+<div class="output">
+
+
+<div class="output_area"><div class="prompt"></div>
+<div class="box-flex1 output_subarea output_display_data">
+
+
+<pre>
+()
+</pre>
+
+</div>
+</div>
+
+<div class="output_area"><div class="prompt"></div>
+<div class="box-flex1 output_subarea output_display_data">
+
+
+<pre>
+
+</pre>
+
+</div>
+</div>
+
+<div class="output_area"><div class="prompt"></div>
+<div class="box-flex1 output_subarea output_display_data">
+
+<div class="output_html rendered_html">
+<img src="data:image/png;base64,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">
+
+</div>
+
+</div>
+</div>
+
+<div class="output_area"><div class="prompt"></div>
+<div class="box-flex1 output_subarea output_display_data">
+
+<div class="output_html rendered_html">
+<img src="data:image/png;base64,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">
+
+</div>
+
+</div>
+</div>
+
+<div class="output_area"><div class="prompt"></div>
+<div class="box-flex1 output_subarea output_display_data">
+
+
+<pre>
+
+</pre>
+
+</div>
+</div>
+
+<div class="output_area"><div class="prompt"></div>
+<div class="box-flex1 output_subarea output_display_data">
+
+
+<pre>
+
+</pre>
+
+</div>
+</div>
+
+<div class="output_area"><div class="prompt"></div>
+<div class="box-flex1 output_subarea output_display_data">
+
+
+<pre>
+         1          2          3          4          5 
+ 4.741e-02  3.162e-02  1.583e-02  3.381e-05 -1.576e-02
+</pre>
+
+</div>
+</div>
+
+<div class="output_area"><div class="prompt"></div>
+<div class="box-flex1 output_subarea output_display_data">
+
+
+<pre>
+
+</pre>
+
+</div>
+</div>
+
+<div class="output_area"><div class="prompt"></div>
+<div class="box-flex1 output_subarea output_display_data">
+
+
+<pre>
+
+</pre>
+
+</div>
+</div>
+
+<div class="output_area"><div class="prompt"></div>
+<div class="box-flex1 output_subarea output_display_data">
+
+
+<pre>
+
+</pre>
+
+</div>
+</div>
+
+<div class="output_area"><div class="prompt"></div>
+<div class="box-flex1 output_subarea output_display_data">
+
+
+
+</div>
+</div>
+
+</div>
+</div>
+
+</div>
+<div class="cell border-box-sizing code_cell">
+<div class="input">
+<div class="prompt input_prompt">
+In&nbsp;[5]:
+</div>
+<div class="input_area box-flex1">
+<div class="highlight"><pre><span class="nf">sse</span>
+</pre></div>
+
+</div>
+</div>
+
+<div class="output_wrapper">
+<div class="output">
+
+
+<div class="output_area"><div class="prompt"></div>
+<div class="box-flex1 output_subarea output_display_data">
+
+
+<pre>
+2.4619397033555017e-3
+</pre>
+
+</div>
+</div>
+
+</div>
+</div>
+
+</div>
+<div class="cell border-box-sizing code_cell">
+<div class="input">
+<div class="prompt input_prompt">
+In&nbsp;[]:
+</div>
+<div class="input_area box-flex1">
+<div class="highlight"><pre>
+</pre></div>
+
+</div>
+</div>
+
+</div>
+</body>
+</html>
diff --git a/examples/ihaskell3.ipynb b/examples/ihaskell3.ipynb
new file mode 100644
--- /dev/null
+++ b/examples/ihaskell3.ipynb
@@ -0,0 +1,253 @@
+{
+ "metadata": {
+  "language": "haskell",
+  "name": "",
+  "signature": "sha256:77784b243dcc073ca234e267b10dd773decbb010b9dbb529bf20bf1714830221"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+  {
+   "cells": [
+    {
+     "cell_type": "markdown",
+     "metadata": {},
+     "source": [
+      "# Multiple plots with Rlang-QQ\n",
+      "An example of `Rlang-QQ-0.1.2.0`, which supports multiple figures.\n",
+      "\n",
+      "First a pile of imports needed:"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      ":set -XQuasiQuotes -XTupleSections -XViewPatterns\n",
+      "import IHaskell.Display -- shouldn't be needed but it turns out that it is essential\n",
+      "import IHaskell.Display.Rlangqq () -- to check it's installed\n",
+      "import Data.Monoid\n",
+      "import Control.Applicative\n",
+      "import Data.List"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [],
+     "prompt_number": 1
+    },
+    {
+     "cell_type": "markdown",
+     "metadata": {},
+     "source": [
+      "Rlang-QQ saves intermediate files. There is some code\n",
+      "hidden in `IHaskell.Display.RlangQQ` and `RlangQQ.ParseKnitted`\n",
+      "which gets those messages/warnings/plots."
+     ]
+    },
+    {
+     "cell_type": "markdown",
+     "metadata": {},
+     "source": [
+      "Just some more of the same integration stuff that may be easier to think about because it's written in haskell"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "-- | trapezoid rule. doesn't reuse previous values\n",
+      "trap :: Fractional a\n",
+      "    => (a -> a) -- ^ function\n",
+      "    -> a -- ^ lower bound\n",
+      "    -> a -- ^ upepr bound\n",
+      "    -> Int -- ^ number of panels to divide the interval into\n",
+      "    -> a -- ^ integral approximation\n",
+      "trap f a b n =\n",
+      "    let h = (b - a) / fromIntegral n\n",
+      "        xs = take (n-1) $ iterate (h+) (a+h)\n",
+      "            -- easier to see as [a+h, a+2*h .. b-h])\n",
+      "            -- but some interval arithmetic doesn't support [a..b]\n",
+      "    in h * foldl' (\\s x -> s + f x) ((f a + f b) / 2) xs"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [],
+     "prompt_number": 2
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "improve :: Fractional a\n",
+      "    => Int -- n\n",
+      "    -> a -- O(h^n) estimate with step size h/2\n",
+      "    -> a -- O(h^n) estimate with step size h\n",
+      "    -> a -- O(h^(n+1)) estimate\n",
+      "improve n x y = let c = 4^(n-1) in (c*x - y) / (c - 1)\n",
+      "\n",
+      "rombM :: Fractional a\n",
+      "    => (a -> a)\n",
+      "    -> a\n",
+      "    -> a\n",
+      "    -> [[a]]\n",
+      "rombM f a b =\n",
+      "    let is = map (\\n -> trap f a b (2^n)) [0..]\n",
+      "    in map snd\n",
+      "        $ iterate\n",
+      "            (\\(n,s) -> (n+1, zipWith (improve n) (tail s) s))\n",
+      "            (2,is)\n",
+      "\n",
+      "romb :: Fractional a\n",
+      "    => (a -> a)\n",
+      "    -> a\n",
+      "    -> a\n",
+      "    -> [a] -- successive approximations\n",
+      "romb f a b = map head $ rombM f a b"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [],
+     "prompt_number": 7
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "xs = take 5 $ romb exp 0 1 :: [Double]\n",
+      "\n",
+      "print xs"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "metadata": {},
+       "output_type": "display_data",
+       "text": [
+        "[1.8591409142295225,1.7188611518765928,1.7182826879247577,1.7182818287945305,1.7182818284590786]"
+       ]
+      }
+     ],
+     "prompt_number": 3
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "sse <- do\n",
+      " [pun| (sse) |] <- [rDisp|\n",
+      "    m <- lm( log($(xs) / (exp(1)-1)) ~ I(1:length($(xs))))\n",
+      "    plot(m, which=1:2)\n",
+      "    print(predict(m))\n",
+      "    hs_sse <- sum( resid(m)^2 )\n",
+      "    |]\n",
+      " return (sse :: Double)\n",
+      "() -- needed to force a display"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "metadata": {},
+       "output_type": "display_data",
+       "text": [
+        "()"
+       ]
+      },
+      {
+       "metadata": {},
+       "output_type": "display_data",
+       "text": []
+      },
+      {
+       "html": [
+        "<img src=\"data:image/png;base64,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\">\n"
+       ],
+       "metadata": {},
+       "output_type": "display_data",
+       "text": [
+        "<img src=\"data:image/png;base64,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\">"
+       ]
+      },
+      {
+       "html": [
+        "<img src=\"data:image/png;base64,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\">\n"
+       ],
+       "metadata": {},
+       "output_type": "display_data",
+       "text": [
+        "<img src=\"data:image/png;base64,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\">"
+       ]
+      },
+      {
+       "metadata": {},
+       "output_type": "display_data",
+       "text": []
+      },
+      {
+       "metadata": {},
+       "output_type": "display_data",
+       "text": []
+      },
+      {
+       "metadata": {},
+       "output_type": "display_data",
+       "text": [
+        "         1          2          3          4          5 \n",
+        " 4.741e-02  3.162e-02  1.583e-02  3.381e-05 -1.576e-02"
+       ]
+      },
+      {
+       "metadata": {},
+       "output_type": "display_data",
+       "text": []
+      },
+      {
+       "metadata": {},
+       "output_type": "display_data",
+       "text": []
+      },
+      {
+       "metadata": {},
+       "output_type": "display_data",
+       "text": []
+      },
+      {
+       "metadata": {},
+       "output_type": "display_data"
+      }
+     ],
+     "prompt_number": 4
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "sse"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "metadata": {},
+       "output_type": "display_data",
+       "text": [
+        "2.4619397033555017e-3"
+       ]
+      }
+     ],
+     "prompt_number": 5
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [],
+     "language": "python",
+     "metadata": {},
+     "outputs": []
+    }
+   ],
+   "metadata": {}
+  }
+ ]
+}
diff --git a/examples/runexamples.hs b/examples/runexamples.hs
--- a/examples/runexamples.hs
+++ b/examples/runexamples.hs
@@ -1,4 +1,4 @@
--- same test runner as in HList
+-- similar to the test runner as in HList
 module Main where
 
 import Control.Exception
@@ -16,18 +16,19 @@
   es <- getDirectoryContents "examples"
 
 
+  putStrLn "Candidate tests"
   print es
   -- very dumb
   es <- filterM (\e -> allM
     [return (takeExtension e == ".hs"),
-     doesFileExist (dropExtension ("examples"</>e) ++ ".ref") ]) es
+     doesFileExist (dropExtension ("examples"</>e) ++ ".ref")]) es
 
+  putStrLn "\nSelected tests"
   print es
 
   hspec $ do
     mapM_ runghcwith es
 
-
 runghcwith f = describe f $ it "ok" $ checkResult $
   do
     let ex = ("examples" </>)
@@ -37,7 +38,9 @@
 
     (ec, stdout, stderr) <- readProcessWithExitCode "cabal" ["repl","-v0",
         "--ghc-options", "-w -fcontext-stack=50 -iexamples -v0 "]
-        (":set -package lens\n:load " ++ inFile ++ "\nmain")
+        (":set -package lens\n\
+         \:load " ++ inFile ++
+         "\nmain\n")
 
     writeFile outFile stdout
 
diff --git a/examples/test.png b/examples/test.png
Binary files a/examples/test.png and b/examples/test.png differ
diff --git a/examples/test2.hs b/examples/test2.hs
deleted file mode 100644
--- a/examples/test2.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-{-# LANGUAGE NoMonomorphismRestriction #-}
-{-# LANGUAGE TypeOperators #-}
-{-# LANGUAGE DataKinds #-}
-{-# LANGUAGE QuasiQuotes #-}
-module Main where
-import RlangQQ
-import Data.HList
-
-
-x = [0 .. 10  :: Double]
-y = map (sin . (*pi) . (/10)) x
-
-
-test = [r| print('hi'); hs_z <- hs_x + hs_y |]
-
-test2 = fmap (.!. (Label :: Label "z")) test
-
-test3 = print =<< (test2 :: IO [Double])
-
-
-main = do
-    test3
-    let hs = zipWith (+) x y
-    let sse x y = sum $ zipWith (\a b -> (a-b)^2) x y
-    fmap (sse hs) test2
diff --git a/examples/test2.ref b/examples/test2.ref
deleted file mode 100644
--- a/examples/test2.ref
+++ /dev/null
@@ -1,2 +0,0 @@
-[0.0,1.3090169943749475,2.5877852522924734,3.8090169943749475,4.951056516295154,6.0,6.951056516295154,7.8090169943749475,8.587785252292473,9.309016994374948,10.0]
-0.0
diff --git a/examples/test3.hs b/examples/test3.hs
deleted file mode 100644
--- a/examples/test3.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# LANGUAGE ViewPatterns #-} -- for pun
-{-# LANGUAGE DataKinds #-}
-{-# LANGUAGE TemplateHaskell, QuasiQuotes #-}
-module Main where
-import RlangQQ
-import GHC.TypeLits
-
-makeLabels6 (words "x y z")
-
-inRec = x .=. "xlabel" .*.  y .=. [1,2,3::Double] .*. z .=. [3,2,1 :: Double] .*. emptyRecord
-
--- fixity is bad for .!. see test3_lens.hs for something better?
-main = do
-    o <- [r|
-                print(hs_inRec)
-                hs_inRec <- within(hs_inRec, y <- y + z) |]
-    print ((o .!. (Label :: Label "inRec")) .!. y)
-
-
-    -- alternative to the above (shadows the label y)
-    let [pun| inRec{ y } |] = o
-    print y
diff --git a/examples/test3.ref b/examples/test3.ref
deleted file mode 100644
--- a/examples/test3.ref
+++ /dev/null
@@ -1,2 +0,0 @@
-[4.0,4.0,4.0]
-[4.0,4.0,4.0]
diff --git a/examples/test3_lens.hs b/examples/test3_lens.hs
deleted file mode 100644
--- a/examples/test3_lens.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE DataKinds #-}
-{-# LANGUAGE TemplateHaskell, QuasiQuotes #-}
-module Main where
-import RlangQQ
-import GHC.TypeLits
-import Control.Lens
-
-makeLabelable "x y z"
-
-inRec = x .==. "xlabel" .*.  y .==. [1,2,3::Double] .*. z .==. [3,2,1 :: Double] .*. emptyRecord
-
-main = do
-    o <- [r|
-                print(hs_inRec)
-                hs_inRec <- within(hs_inRec, y <- y + z) |]
-    let inR = hLens' (Label :: Label "inRec")
-    print (o ^.inR.y)
diff --git a/examples/test3_lens.ref b/examples/test3_lens.ref
deleted file mode 100644
--- a/examples/test3_lens.ref
+++ /dev/null
@@ -1,1 +0,0 @@
-[4.0,4.0,4.0]
diff --git a/examples/test4.hs b/examples/test4.hs
deleted file mode 100644
--- a/examples/test4.hs
+++ /dev/null
@@ -1,52 +0,0 @@
-{-# LANGUAGE DataKinds, TemplateHaskell, QuasiQuotes #-}
-module Main where
-import RlangQQ
-import GHC.TypeLits -- ghc7.6 workaround
-import Control.Monad
-
-makeLabels6 (words "x y z")
-
-inRec = x .=. "xlabel" .*.  y .=. [1,2,3::Double] .*. z .=. [3,2,1 :: Double] .*. emptyRecord
-
-inRecL = Label :: Label "inRec"
-
-{- $test
-
-note that the same R-session is run for all calls to f1,
-that is why the results differ between f1 and f2:
-
->>> f1
-[5.0,5.0,5.0]
-[10.0,9.0,8.0]
-[16.0,14.0,12.0]
-[23.0,20.0,17.0]
-
-
->>> f2
-[5.0,5.0,5.0]
-[6.0,6.0,6.0]
-[7.0,7.0,7.0]
-[8.0,8.0,8.0]
-
--}
-f1 = do
-
-    w <- newRChan
-
-    [r|
-        print(hs_inRec) # this shouldn't be necessary to force INOUT
-        hs_inRec <- within(hs_inRec, y <- y + z + ch_w) |]
-
-
-    forM_ [1,2,3,4 :: Double] $ \n -> do
-            o' <- sendRcv w n
-            print ((o' .!. inRecL) .!. y)
-
-f2 = forM_ [1,2,3,4 :: Double] $ \n -> do
-            o' <- [r|
-                        print(hs_inRec) # this shouldn't be necessary to force INOUT
-                        hs_inRec <- within(hs_inRec, y <- y + z + hs_n) |]
-            print ((o' .!. inRecL) .!. y)
-
-
-main = do f1;f2
diff --git a/examples/test4.ref b/examples/test4.ref
deleted file mode 100644
--- a/examples/test4.ref
+++ /dev/null
@@ -1,8 +0,0 @@
-[5.0,5.0,5.0]
-[10.0,9.0,8.0]
-[16.0,14.0,12.0]
-[23.0,20.0,17.0]
-[5.0,5.0,5.0]
-[6.0,6.0,6.0]
-[7.0,7.0,7.0]
-[8.0,8.0,8.0]
diff --git a/examples/test5.hs b/examples/test5.hs
deleted file mode 100644
--- a/examples/test5.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-{-# LANGUAGE DataKinds, TemplateHaskell, QuasiQuotes #-}
-module Main where
-import RlangQQ
-import GHC.TypeLits -- ghc7.6 workaround
-import Control.Monad
-
-makeLabels6 (words "x y z")
-
-inRec = x .=. "xlabel" .*.  y .=. [1,2,3::Double] .*. z .=. [3,2,1 :: Double] .*. emptyRecord
-
-inRecL = Label :: Label "inRec"
-
-f2 = forM_ [1,2,3,4 :: Double] $ \n -> do
-            o' <- [r| # this shouldn't be necessary to force INOUT
-                        print(hs_inRec)
-                        hs_inRec <- within(hs_inRec, y <- y + z + $(n+1)  ) |]
-            print ((o' .!. inRecL) .!. y)
-
-
-{- $output
-
-
->>> f2
-[6.0,6.0,6.0]
-[7.0,7.0,7.0]
-[8.0,8.0,8.0]
-[9.0,9.0,9.0]
-
--}
-
-main = f2
diff --git a/examples/test5.ref b/examples/test5.ref
deleted file mode 100644
--- a/examples/test5.ref
+++ /dev/null
@@ -1,4 +0,0 @@
-[6.0,6.0,6.0]
-[7.0,7.0,7.0]
-[8.0,8.0,8.0]
-[9.0,9.0,9.0]
diff --git a/examples/test6.html b/examples/test6.html
new file mode 100644
--- /dev/null
+++ b/examples/test6.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+  <meta http-equiv="Content-Style-Type" content="text/css" />
+  <meta name="generator" content="pandoc" />
+  <title></title>
+  <style type="text/css">
+table.sourceCode, tr.sourceCode, td.lineNumbers, td.sourceCode {
+  margin: 0; padding: 0; vertical-align: baseline; border: none; }
+table.sourceCode { width: 100%; }
+td.lineNumbers { text-align: right; padding-right: 4px; padding-left: 4px; color: #aaaaaa; border-right: 1px solid #aaaaaa; }
+td.sourceCode { padding-left: 5px; }
+code > span.kw { color: #007020; font-weight: bold; }
+code > span.dt { color: #902000; }
+code > span.dv { color: #40a070; }
+code > span.bn { color: #40a070; }
+code > span.fl { color: #40a070; }
+code > span.ch { color: #4070a0; }
+code > span.st { color: #4070a0; }
+code > span.co { color: #60a0b0; font-style: italic; }
+code > span.ot { color: #007020; }
+code > span.al { color: #ff0000; font-weight: bold; }
+code > span.fu { color: #06287e; }
+code > span.er { color: #ff0000; font-weight: bold; }
+  </style>
+</head>
+<body>
+<h1 id="test-6">test 6</h1>
+<p>This file can be loaded into whatever editor you like to use for knitr. ghc is called for the second code block.</p>
+<pre class="sourceCode r"><code class="sourceCode r"><span class="kw">library</span>(knitr)
+opts_chunk$<span class="kw">set</span>(<span class="dt">engine =</span> <span class="st">&quot;haskell&quot;</span>, <span class="dt">engine.path =</span> <span class="st">&quot;ghc&quot;</span>)</code></pre>
+<pre class="sourceCode haskell"><code class="sourceCode haskell"><span class="fu">:</span>set <span class="fu">-</span><span class="dt">XQuasiQuotes</span>
+<span class="fu">:</span><span class="kw">module</span> <span class="fu">+</span><span class="dt">RlangQQ</span>
+<span class="kw">let</span> fibs <span class="fu">=</span> <span class="fl">0.0</span><span class="fu">:</span><span class="dv">1</span><span class="fu">:</span> <span class="fu">zipWith</span> (<span class="fu">+</span>) fibs (<span class="fu">drop</span> <span class="dv">1</span> fibs)
+[r<span class="fu">|</span> png(<span class="ch">&#39;test6_fig1.png&#39;</span>); plot(<span class="dv">1</span><span class="fu">:</span><span class="dv">20</span>, <span class="fu">$</span>(<span class="fu">take</span> <span class="dv">20</span> fibs)); dev<span class="fu">.</span>off() <span class="fu">|</span>]</code></pre>
+<div class="figure">
+<img src="test6_fig1.png" alt="test6 caption here" /><p class="caption">test6 caption here</p>
+</div>
+<h2 id="limitations">limitations</h2>
+<ul>
+<li>This simple example works but unfortunately the haskell knitr engine doesn't allow newlines instead of semicolons in the quasiquote (<code>[r| |]</code>)</li>
+<li><p>Also note a comment from here <a href="http://yihui.name/knitr/demo/engines/"><code class="url">http://yihui.name/knitr/demo/engines/</code></a>:</p>
+<pre><code>Except engine=&#39;R&#39; (default), all chunks are executed in separate sessions, so the variables cannot be directly shared. If we want to make use of objects created in previous chunks, we usually have to write them to files (as side effects). For the bash engine, we can use Sys.setenv() to export variables from R to bash (example).</code></pre></li>
+<li><p>Graphical output from haskell chunks has to be manually included.</p></li>
+</ul>
+</body>
+</html>
diff --git a/examples/test7.html b/examples/test7.html
new file mode 100644
--- /dev/null
+++ b/examples/test7.html
@@ -0,0 +1,58 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+  <meta http-equiv="Content-Style-Type" content="text/css" />
+  <meta name="generator" content="pandoc" />
+  <title></title>
+  <style type="text/css">
+table.sourceCode, tr.sourceCode, td.lineNumbers, td.sourceCode {
+  margin: 0; padding: 0; vertical-align: baseline; border: none; }
+table.sourceCode { width: 100%; }
+td.lineNumbers { text-align: right; padding-right: 4px; padding-left: 4px; color: #aaaaaa; border-right: 1px solid #aaaaaa; }
+td.sourceCode { padding-left: 5px; }
+code > span.kw { color: #007020; font-weight: bold; }
+code > span.dt { color: #902000; }
+code > span.dv { color: #40a070; }
+code > span.bn { color: #40a070; }
+code > span.fl { color: #40a070; }
+code > span.ch { color: #4070a0; }
+code > span.st { color: #4070a0; }
+code > span.co { color: #60a0b0; font-style: italic; }
+code > span.ot { color: #007020; }
+code > span.al { color: #ff0000; font-weight: bold; }
+code > span.fu { color: #06287e; }
+code > span.er { color: #ff0000; font-weight: bold; }
+  </style>
+</head>
+<body>
+<h1 id="test-7">test 7</h1>
+<p>Same as test6, except needs a change to knitr as of October 2013 (ie. 1.5 is not good enough). <a href="https://github.com/yihui/knitr/pull/633">This commit is needed</a>.</p>
+<p>This file can be loaded into whatever editor you like to use for knitr. I use <a href="http://www.vim.org/scripts/script.php?script_id=2628">vim-r-plugin</a>, but perhaps ESS or Rstudio can also work. After some set-up in the first block. ghc is called for the second code block.</p>
+<pre class="sourceCode r"><code class="sourceCode r"><span class="kw">library</span>(knitr)
+opts_chunk$<span class="kw">set</span>(<span class="dt">engine =</span> <span class="st">&quot;haskell&quot;</span>, <span class="dt">engine.path =</span> <span class="st">&quot;ghc&quot;</span>, <span class="dt">engine.opts =</span> <span class="st">&quot;-e </span><span class="ch">\&quot;</span><span class="st">:set -XQuasiQuotes</span><span class="ch">\&quot;</span><span class="st"> -e </span><span class="ch">\&quot;</span><span class="st">import RlangQQ</span><span class="ch">\&quot;</span><span class="st">&quot;</span>)</code></pre>
+<pre class="sourceCode haskell"><code class="sourceCode haskell">
+<span class="kw">let</span> fibs <span class="fu">=</span> <span class="fl">0.0</span><span class="fu">:</span><span class="dv">1</span><span class="fu">:</span> <span class="fu">zipWith</span> (<span class="fu">+</span>) fibs (<span class="fu">drop</span> <span class="dv">1</span> fibs)
+
+[r<span class="fu">|</span> png(<span class="ch">&#39;test6_fig1.png&#39;</span>)
+    plot(<span class="dv">1</span><span class="fu">:</span><span class="dv">20</span>, <span class="fu">$</span>(<span class="fu">take</span> <span class="dv">20</span> fibs))
+    dev<span class="fu">.</span>off() <span class="fu">|</span>]</code></pre>
+<pre class="sourceCode haskell"><code class="sourceCode haskell">
+<span class="kw">do</span> <span class="kw">let</span> x <span class="fu">=</span> <span class="dv">1</span>
+   <span class="fu">print</span>(<span class="dv">1</span><span class="fu">+</span>x)
+   <span class="fu">print</span>(<span class="dv">2</span><span class="fu">+</span>x)</code></pre>
+<pre><code>## 2
+## 3</code></pre>
+<div class="figure">
+<img src="test6_fig1.png" alt="test6 caption here" /><p class="caption">test6 caption here</p>
+</div>
+<h2 id="limitations">limitations</h2>
+<ul>
+<li><p>each block is a separate session. You would have to manually save/load variables defined in the previous chunk to make things work as they do for R.</p></li>
+<li><p>code is interpreted, not compiled</p></li>
+<li><p>graphical output from haskell chunks has to be manually included</p></li>
+</ul>
+<h2 id="raw-code">raw code</h2>
+<p>See <a href="test7.Rmd.html">here</a></p>
+</body>
+</html>
diff --git a/examples/testplot.png b/examples/testplot.png
new file mode 100644
Binary files /dev/null and b/examples/testplot.png differ
diff --git a/examples/tests.hs b/examples/tests.hs
new file mode 100644
--- /dev/null
+++ b/examples/tests.hs
@@ -0,0 +1,87 @@
+{-# LANGUAGE ViewPatterns #-}
+{-# LANGUAGE NoMonomorphismRestriction #-}
+{-# LANGUAGE DataKinds, PolyKinds, FlexibleContexts, TemplateHaskell, QuasiQuotes #-}
+module Main where
+import Test.Hspec
+
+import System.Directory
+import RlangQQ
+import GHC.TypeLits
+import Control.Lens
+
+import Control.Monad
+import qualified Data.Vector as V
+
+makeLabelable "x y z"
+
+inRecL = hLens' (Label :: Label "inRec")
+
+inRec = [pun| x y z |] where
+    x = "xlabel"
+    y,z :: [Double]
+    y = [1,2,3]
+    z = [3,2,1]
+
+
+main = hspec $ describe "rlangqq" $ do
+  it "can read a tsv file" $ do
+      [pun| x@(a b) s |] <- [r|
+        # find the file whether we runghc tests.hs
+        # runghc examples/tests.hs
+        fname <- c(Sys.glob('*.tsv'), Sys.glob('examples/*.tsv'))[1]
+        hs_x <- as.list(read.delim(fname, sep=' '))
+        hs_s <- as.numeric(with(hs_x, t(a) %*% b))
+        |]
+      (V.sum (V.zipWith (*) a b) :: Double, s :: Double)
+        `shouldBe` (93.783, 93.783)
+
+  it "does the same as zipWith" $ do
+
+      o <- [r| print(hs_inRec) # should be unnecessary
+               hs_inRec <- within(hs_inRec, y <- y + z) |]
+      let inR = hLens' (Label :: Label "inRec")
+      (o ^.inR.y) `shouldBe` zipWith (+) (inRec^.y) (inRec^.z)
+  
+  it "accumulates when variables are ch_" $ do
+        w <- newRChan
+        [r|
+            print(hs_inRec) # this shouldn't be necessary to force INOUT
+            hs_inRec <- within(hs_inRec, y <- y + z + ch_w) |]
+
+        out <- forM [1,2,3,4 :: Double] $ \n -> do
+                sendRcv w n <&> view (inRecL . y)
+        out `shouldBe`
+          tail (scanl
+                    (\ accum n -> map (+n) $ zipWith (+) (inRec^.z) accum)
+                    (inRec^.y)
+                    [1 .. 4])
+
+  it "repeats when variables are not ch_" $ do
+      out <- forM [1,2,3,4 :: Double] $ \n -> do
+          [r| print(hs_inRec) # this shouldn't be necessary to force INOUT
+              hs_inRec <- within(hs_inRec, y <- y + z + hs_n) |]
+            <&> view (inRecL . y)
+      out `shouldBe`
+       map (\n -> map (+n) (zipWith (+) (inRec^.y) (inRec^.z))) [1 .. 4]
+    
+  it "interpolates haskell expressions" $ do
+        ys <- forM [1,2,3,4 :: Double] $ \n -> do
+            [pun| inRec{y} |] <- [r| # this shouldn't be necessary to force INOUT
+                        print(hs_inRec)
+                        hs_inRec <- within(hs_inRec, y <- y + z + $(n+1)  ) |]
+            return y
+        ys `shouldBe` map (\n -> map (+(1+n)) (zipWith (+) (inRec^.y) (inRec^.z))) [1 .. 4]
+
+  it "can make a plot where you ask it to" $ do
+      let x = [0 .. 10  :: Double]
+          y = map (sin . (*pi) . (/10)) x
+      b <- doesFileExist "testplot.png"
+      when b (removeFile "testplot.png")
+      -- normally you would just call qplot, and find a plot in Rtmp/figN/...
+      [r| library(ggplot2)
+          print('blahh')
+          png(file='testplot.png')
+          plot(qplot( hs_x, hs_y ))
+          dev.off()
+          |]
+      doesFileExist "testplot.png" `shouldReturn` True
diff --git a/src/HListExtras.hs b/src/HListExtras.hs
--- a/src/HListExtras.hs
+++ b/src/HListExtras.hs
@@ -1,18 +1,7 @@
-{-# LANGUAGE FunctionalDependencies #-}
-{-# LANGUAGE TypeFamilies #-}
 {-# LANGUAGE NoMonomorphismRestriction #-}
-{-# LANGUAGE ConstraintKinds #-}
-{-# LANGUAGE UndecidableInstances #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
-{-# LANGUAGE TemplateHaskell #-}
 {-# LANGUAGE PolyKinds #-}
-{-# LANGUAGE KindSignatures #-}
-{-# LANGUAGE TypeOperators #-}
-{-# LANGUAGE GADTs #-}
-{-# LANGUAGE ScopedTypeVariables #-}
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE DataKinds #-}
-{-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE TemplateHaskell #-}
+{-# LANGUAGE UndecidableInstances #-}
 
 module HListExtras where
 import Data.HList.CommonMain
@@ -22,65 +11,4 @@
 instance (ApplyAB f a b, ab ~ (a -> b)) =>  ApplyAB FApply f ab where
     applyAB _ = applyAB
 
-class HReplicate2 (n ::HNat) e l | n e -> l, l -> n
-    where hReplicate2 :: Proxy n -> e -> HList l
-instance HReplicate2 HZero e '[] where
-    hReplicate2 _ _ = HNil
-instance (HReplicate2 n e es') => HReplicate2 (HSucc n) e (e ': es') where
-    hReplicate2 n e = e `HCons` hReplicate2 (hPred n) e
-
--- hReplicateApp :: HReplicate2 (HLength r) e r' => e -> HList r
-hReplicateApp e = let r = hMap FApply (hReplicate2 (hLength r) e) in r
-
--- | splitAt
-hSplitAt n xs = hSplitAtAux n xs HNil
-
-class HSplitAtAux (n :: HNat) l a0 a b | n -> l a0 a b where
-    hSplitAtAux :: Proxy n -> HList l -> HList a0 -> (HList a, HList b)
-
-instance (l ~ b, a ~ HRevApp a0 '[]) => HSplitAtAux HZero l a0 a b where
-    hSplitAtAux _ l acc = (hReverse acc, l)
-
-instance  (  (x ': xs) ~ ls, acc' ~ (x ': acc),
-    HSplitAtAux n xs acc' a b) => HSplitAtAux (HSucc n) ls acc a b where
-    hSplitAtAux n (HCons x xs) acc = hSplitAtAux (hPred n) xs (HCons x acc)
-
-
-hEnumFromTo :: Proxy a -> Proxy b -> Proxy (HEnumFromTo a b)
-hEnumFromTo a b = proxy
-
--- |  [n1 .. n1 + n2]
-
-type family HEnumFromTo (from::HNat) (to::HNat) :: [HNat]
-type instance HEnumFromTo a HZero = '[a]
-type instance HEnumFromTo a (HSucc b) = a ': HEnumFromTo (HSucc a) b
-
-
--- this doesn't work any better... want ghc to be able to simplify
--- that (hReverse (hReverse x) `asTypeOf` x)
-class (SameLength a b, SameLength b a) => HReverse2 a b | a -> b, b -> a where
-    hReverse2 :: HList a -> HList b
-
-instance (SameLength a b, SameLength b a, HRevApp a '[] ~ b, HRevApp b '[] ~ a) =>  HReverse2 a b where
-    hReverse2 = hReverse
-
-
-class HMap1 f a b where hMap1 :: f -> HList a -> HList b
-
-instance (a ~ '[]) => HMap1  f a '[] where
-    hMap1 _ _ = HNil
-
-instance (ApplyAB f a b, (a ': as) ~ aas, HMap1 f as bs) =>
-    HMap1 f aas (b ': bs) where
-    hMap1 f (HCons a as) = HCons (applyAB f a) (hMap1 f as)
-
-
-class HMap2 f a b where hMap2 :: f -> HList a -> HList b
-
-instance (a ~ '[]) => HMap2  f '[] a where
-    hMap2 _ _ = HNil
-
-instance (ApplyAB f a b, (b ': bs) ~ bbs, HMap2 f as bs) =>
-    HMap2 f (a ': as) bbs where
-    hMap2 f (HCons a as) = HCons (applyAB f a) (hMap2 f as)
 
diff --git a/src/RlangQQ.hs b/src/RlangQQ.hs
--- a/src/RlangQQ.hs
+++ b/src/RlangQQ.hs
@@ -36,15 +36,10 @@
 import Language.Haskell.TH.Quote
 
 import Data.HList.CommonMain
-
 import GHC.TypeLits
-
-
 import Control.Concurrent
 
 
-
-
 {- | Calls R with the supplied string. Variables in R prefixed hs_ cause
 the corresponding (un-prefixed) variable to be converted. The variable(s) must
 be in at least one class 'FromRDS' or 'ToRDS'. Currently the relation between
@@ -74,24 +69,22 @@
 
 While it is only somewhat usable, you can have Rnw/Rmd documents (knitr) that
 include haskell code. One example is given
-<http://code.haskell.org/~aavogt/Rlang-QQ/examples/test7.html here>
+<http://code.haskell.org/~aavogt/Rlang-QQ/examples/test7.Rmd here>. A second
+option is to use <http://hackage.haskell.org/package/ihaskell IHaskell>, for
+which there are two example notebooks in the same <http://code.haskell.org/~aavogt/Rlang-QQ/examples>
 
 -}
 r = QuasiQuoter { quoteExp = \s -> do
         n <- getRlangQQ_n
-        quoteRExpression2 n False ("print('');"++ s)
-            -- the first expression gets dropped somewhere else
-            -- this hack is easiest
+        quoteRExpression2 n False s 
         }
 
 
--- | same as @[rChan| |]@ does the same as [r|  |], except the
+-- | @[rChan| |]@ does the same as [r|  |], except the
 -- return value will be a @Chan (Record a)@.
 rChan = QuasiQuoter { quoteExp = \s -> do
         n <- getRlangQQ_n
-        quoteRExpression2 n True ("print('');"++ s)
-            -- the first expression gets dropped somewhere else
-            -- this hack is easiest
+        quoteRExpression2 n True s
         }
 
 {- $records
@@ -149,6 +142,8 @@
 -- | @y <- sendRcv c x@ sends the value @x@ using the chan @c@.
 -- Provided that an @[r| |]@ quasiquote above refers to a @ch_c@,
 -- the call to 'sendRcv' will eventually produce a 'Record' @y@
+-- which provides a reference to all the output variables that
+-- R calculated with the given @x@. 
 sendRcv :: Chan (t, b -> IO ()) -> t -> IO b
 sendRcv ch e = do
     v <- newEmptyMVar
@@ -164,7 +159,7 @@
 also, return R's stdout / stderr / exitcode in the HList. This won't be practical
 for the Chan option since the stdout is getting consumed?
 
-[@antiquote@] doesn't do escapes, so a string '$( blah )' might end badly
+[@antiquote@] doesn't do escapes, so a string \'$( blah )\' might end badly
 
 [@more examples@] conversion both ways etc.
 
@@ -173,7 +168,7 @@
 [@more datatypes@] support things like ??, ...
 
 [@call R functions as if they were defined in haskell@]
-This can be achievede already by doing something like
+This can be achieved already by doing something like
 
 > x <- newRChan
 > [r| hs_f <- ch_x + 1 |]
@@ -188,8 +183,10 @@
 Can this be made to work without looking at whether there is a function() after the <-?
 
 [@call hs functions as if they were defined in R@]
-we might like to be able to have values like @f x = x + 1@
-be callable by.
+Likewise, we might like values like @f x = x + 1@ to be callable from
+R (for example by defining a foreign export ccall f :: Int32 -> Int32), and
+dyn.load('something'); .C('f', x=1L). Alternatively the R interpreter might
+have a way to communicate some other way.
 
 [@use libR.so@]
 there is a <http://hackage.haskell.org/package/hR-0.1.1 hR package> which might
@@ -218,5 +215,7 @@
 
 or run the code first with some dummy inputs (say vectors of length 10 or so),
 and assume those types will continue to be the same.
+
+<http://cran.r-project.org/web/packages/lambda.r/index.html>
 
 -}
diff --git a/src/RlangQQ/Binary.hs b/src/RlangQQ/Binary.hs
--- a/src/RlangQQ/Binary.hs
+++ b/src/RlangQQ/Binary.hs
@@ -1,19 +1,7 @@
-{-# LANGUAGE FunctionalDependencies #-}
-{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE PolyKinds #-}
 {-# LANGUAGE NoMonomorphismRestriction #-}
-{-# LANGUAGE ConstraintKinds #-}
-{-# LANGUAGE UndecidableInstances #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
 {-# LANGUAGE TemplateHaskell #-}
-{-# LANGUAGE PolyKinds #-}
-{-# LANGUAGE KindSignatures #-}
-{-# LANGUAGE TypeOperators #-}
-{-# LANGUAGE GADTs #-}
-{-# LANGUAGE ScopedTypeVariables #-}
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE DataKinds #-}
-{-# LANGUAGE FlexibleInstances #-}
-
+{-# LANGUAGE UndecidableInstances #-}
 {- | Conversions between R's RDS/RDA format and haskell data types.
 
 tested with R 3.0.1
@@ -53,6 +41,8 @@
 import Data.Int
 import Data.HList.CommonMain
 import qualified Data.Vector as V
+import qualified Data.Vector.Storable as VS
+import qualified Data.Vector.Generic as VG
 import qualified Data.Map as M
 
 import Data.Binary
@@ -77,12 +67,12 @@
 import HListExtras
 
 data FLVPair = FLVPair
-instance (LVPair l a ~ b) => ApplyAB FLVPair a b where
-    applyAB FLVPair x = LVPair x
+instance (Tagged l a ~ b) => ApplyAB FLVPair a b where
+    applyAB FLVPair x = Tagged x
 
 -- this should not be necessary
 type family UnHMapFLVPair (a :: [*]) :: [*]
-type instance UnHMapFLVPair (LVPair l a ': as) = a ': UnHMapFLVPair as
+type instance UnHMapFLVPair (Tagged l a ': as) = a ': UnHMapFLVPair as
 type instance UnHMapFLVPair '[] = '[]
 
 -- | this seems to be a magic number. Corresponds to R 3.0.1
@@ -103,30 +93,42 @@
 putDouble = put . (unsafeCoerce :: Double -> Int64)
 getDouble = fmap (unsafeCoerce :: Int64 -> Double) get
 
+getVectorDouble = do
+  14 <- get :: Get Int32
+  len <- get :: Get Int32
+  VG.replicateM (fromIntegral len) getDouble
+
+putVectorDouble x = do
+  put (14 :: Int32)
+  put (fromIntegral $ VG.length x :: Int32)
+  VG.mapM_ putDouble x
+
+getVectorInt = do
+  13 <- get :: Get Int32
+  len <- get :: Get Int32
+  VG.replicateM (fromIntegral len) get
+
+putVectorInt x = do
+  put (13 :: Int32)
+  put (fromIntegral $ VG.length x :: Int32)
+  VG.mapM_ put x
+
 -- | becomes a numeric vector
-instance ToRDS (V.Vector Double) where
-    toRDS x = do
-        put (14 :: Int32)
-        put (fromIntegral $ V.length x :: Int32)
-        V.mapM_ putDouble x
-instance FromRDS (V.Vector Double) where
-    fromRDS = do
-        14 <- get :: Get Int32
-        len <- get :: Get Int32
-        V.mapM (const getDouble) $ V.replicate (fromIntegral len) ()
+instance ToRDS (V.Vector Double) where toRDS = putVectorDouble
 
+-- | becomes a numeric vector
+instance ToRDS (VS.Vector Double) where toRDS = putVectorDouble
+
+instance FromRDS (V.Vector Double) where fromRDS = getVectorDouble
+instance FromRDS (VS.Vector Double) where fromRDS = getVectorDouble
+
 -- | integer vector
-instance ToRDS (V.Vector Int32) where
-    toRDS x = do
-        put (13 :: Int32)
-        put (fromIntegral $ V.length x :: Int32)
-        V.mapM_ put x
-instance FromRDS (V.Vector Int32) where
-    fromRDS = do
-        13 <- get :: Get Int32
-        len <- get
-        V.mapM (const get) $ V.replicate len ()
+instance ToRDS (V.Vector Int32) where toRDS = putVectorInt
+instance FromRDS (V.Vector Int32) where fromRDS = getVectorInt
 
+instance ToRDS (VS.Vector Int32) where toRDS = putVectorInt
+instance FromRDS (VS.Vector Int32) where fromRDS = getVectorInt
+
 -- | character vector @c(\'ab\',\'cd\')@
 instance ToRDS (V.Vector T.Text) where
     toRDS x = do
@@ -183,7 +185,7 @@
 instance  (RDSHLIST xs' xs) => ToRDS (LST xs) where
     toRDS (LST xs) = do
         put (531::Int32)
-        let [(len,"")] = reads (drop 1 $ show (proxy :: Proxy (HLength xs)))
+        let len = hNat2Integral (Proxy :: Proxy (HLength xs))
         put (fromIntegral (len - 2 :: Int) :: Int32)
         hFoldr (HSeq FToRDS) (return () :: Put) xs :: Put
         put (254::Int32)
@@ -198,7 +200,7 @@
 instance (RDSHLIST2 ___ __ l) => FromRDS (LST l) where
     fromRDS = withSelf $ \(self) -> do
         531 <- get :: Get Int32
-        let [(len,"")] = reads (drop 1 $ show (hLength self))
+        let len = hNat2Integral (hLength self) 
         len2 <- get :: Get Int32
         when (len /= len2) $ error $ "fromRDS expected length: " ++ show len ++ " rds file has length: " ++ show len2
         r <- hSequence (hSequence (hMap FApply $ hReplicate (hLength self) FFromRDS) ())
@@ -223,9 +225,9 @@
 
 type ToRDSRecord __ ___ xs = (RDSHLIST __ ___, ToRDS (LST ___),
             RecordValues xs,
-            HList ___ ~ (HList (RecordValuesR xs) `HAppendR` HList '[ListStart, LVPair "names" [String]]),
+            HList ___ ~ (HList (RecordValuesR xs) `HAppendR` HList '[ListStart, Tagged "names" [String]]),
             RecordLabelsString (RecordLabels xs),
-            HAppend (HList (RecordValuesR xs)) (HList '[ ListStart, LVPair "names" [String]]))
+            HAppend (HList (RecordValuesR xs)) (HList '[ ListStart, Tagged "names" [String]]))
 
 
 
@@ -233,7 +235,6 @@
 -- functions called
 type FromRDSRec a b as' as'2 bs' = (HSequence Get b as',
                 HSequence ((->) ()) a b,
-                -- HMap1 FLVPair as' bs',
                 HMapAux FLVPair as' bs',
                 SameLength as' bs',
                 SameLength bs' as',
@@ -245,19 +246,32 @@
                 HMapOut (HComp FShowLabel FLabelLVPair) bs' String,
                 RecordLabelsString (RecordLabels bs'),
                 HNat2Integral (HLength bs'),
-                HReplicate2 (HLength bs') FFromRDS as'2)
+                HReplicate (HLength bs') FFromRDS,
+                HReplicateR (HLength bs')FFromRDS ~ as'2)
 
+{- | R lists become HList records. @list(x=1,y='b')@ parses to something
+like
+
+> let x = Label :: Label "x"
+>     y = Label :: Label "y"
+> in    x .=. 1
+>   .*. y .=. "b"
+>   .*. emptyRecord
+
+You have to get the result type right
+(ie. @Record [Tagged \"x\" Double, Tagged \"y\" String]@) for things to parse
+-}
 instance FromRDSRec a b as' as'2 bs' => FromRDS (Record bs') where
     fromRDS = do
         531 <- get :: Get Int32
-        let len = hNat2Integral (proxy :: Proxy (HLength bs'))
+        let len = hNat2Integral (Proxy :: Proxy (HLength bs'))
         len2 <- get :: Get Int32
         when (len /= len2) $ error $ "fromRDS expected length: " ++ show len ++ " rds file has length: " ++ show len2
 
         r <- hSequence
                 (hSequence
                     (hMap FApply
-                        (hReplicate2 (proxy :: Proxy (HLength bs')) FFromRDS) )
+                        (hReplicate (Proxy :: Proxy (HLength bs')) FFromRDS) )
                     ())
         getListHdr
         "names" <- getString
@@ -269,7 +283,7 @@
                     ++ " rds file has names attribute : " ++ show names
 
         254 <- get :: Get Int32
-        return (Record (hMap FLVPair (r :: HList as')))
+        return (Record (hMap FLVPair (r :: HList as') :: HList bs'))
         -- this hMap1 can't be replaced by hMap?
 
 class RecordLabelsString (a :: [Symbol]) where
@@ -280,14 +294,14 @@
 
 instance (ShowLabel x, RecordLabelsString xs)
         => RecordLabelsString (x ': xs) where
-    recordLabelsString _ = showLabel (Label :: Label x) : recordLabelsString (proxy :: Proxy xs)
+    recordLabelsString _ = showLabel (Label :: Label x) : recordLabelsString (Proxy :: Proxy xs)
 
 -- same as recordLabelsString, but less lazy
 recLabs (Record xs) = hMapOut (HComp FShowLabel FLabelLVPair) xs
 
 data FLabelLVPair = FLabelLVPair
-instance(LVPair l a ~ x, y ~ Label l) => ApplyAB FLabelLVPair x y where
-    applyAB FLabelLVPair = labelLVPair
+instance(Tagged l a ~ x, y ~ Label l) => ApplyAB FLabelLVPair x y where
+    applyAB FLabelLVPair _ = (Label :: Label l)
 
 data FShowLabel = FShowLabel
 instance (string ~ String, ShowLabel l, ll ~ Label l) => ApplyAB FShowLabel ll string
@@ -302,6 +316,8 @@
 
 instance ToRDS Double where toRDS = toRDS . (:[])
 instance ToRDS Int32  where toRDS = toRDS . (:[])
+instance ToRDS Integer  where toRDS = toRDS . (fromIntegral :: Integer -> Int32)
+instance ToRDS Int      where toRDS = toRDS . (fromIntegral :: Int     -> Int32)
 
 instance FromRDS Int32 where
     fromRDS = do
@@ -313,13 +329,30 @@
         [x] <- fromRDS
         return x
 
+instance FromRDS Int where
+    fromRDS = fromIntegral <$> (fromRDS :: Get Int32)
 
+instance FromRDS Integer where
+    fromRDS = fromIntegral <$> (fromRDS :: Get Int32)
+
+
 instance ToRDS [Int32] where
     toRDS = toRDS . V.fromList
 instance FromRDS [Int32] where
     fromRDS = fmap V.toList $ fromRDS
 
+-- | converts to an 'Int32', which is bad on 64 bit systems where
+-- @maxBound :: Int@ is a bigger number than @maxBound :: Int32@
+instance ToRDS [Int] where
+    toRDS = toRDS . V.fromList . map (fromIntegral :: Int -> Int32)
+instance FromRDS [Int] where
+    fromRDS = map (fromIntegral :: Int32 -> Int) . V.toList <$> fromRDS
 
+-- | converts to an 'Int32' first
+instance ToRDS [Integer] where
+    toRDS = toRDS . V.fromList . map (fromIntegral :: Integer -> Int32)
+instance FromRDS [Integer] where
+    fromRDS = map (fromIntegral :: Int32 -> Integer) . V.toList <$> fromRDS
 
 
 putString s = do
@@ -355,12 +388,12 @@
 
 
 -- | probably internal
-instance forall t l. (ToRDS t, ShowLabel l) => ToRDS (LVPair l t) where
-    toRDS (LVPair x) = do
+instance forall t l. (ToRDS t, ShowLabel l) => ToRDS (Tagged l t) where
+    toRDS (Tagged x) = do
         putString (showLabel (undefined :: Label l))
         toRDS x
 -- | probably internal
-instance forall t l. (FromRDS t, ShowLabel l) => FromRDS (LVPair l t) where
+instance forall t l. (FromRDS t, ShowLabel l) => FromRDS (Tagged l t) where
     fromRDS = do
         varName <- getString
 
@@ -368,24 +401,24 @@
         unless (varName == s) $ fail $ unwords ["FromRDS: expecting label  `", s , "', but got: `" , varName , "'"]
 
         x <- fromRDS
-        return (LVPair x)
+        return (Tagged x)
 
 -- | labels are stored with the variables here. compare with the instance for 'Record' / 'LST' which collects
 -- the labels and saves them as an attribute called \"names\"
 newtype RDA a = RDA (HList a)
 
 -- | internal
-instance forall rs l2 t. (ToRDS t, ToRDS (RDA rs), ShowLabel l2) => ToRDS (RDA (LVPair l2 t ': rs)) where
+instance forall rs l2 t. (ToRDS t, ToRDS (RDA rs), ShowLabel l2) => ToRDS (RDA (Tagged l2 t ': rs)) where
     toRDS (RDA (x `HCons` xs)) = do
         putListHdr
         toRDS x
         toRDS (RDA xs)
 
 -- | internal
-instance forall rs l2 t. (FromRDS t, FromRDS (RDA rs), ShowLabel l2) => FromRDS (RDA (LVPair l2 t ': rs)) where
+instance forall rs l2 t. (FromRDS t, FromRDS (RDA rs), ShowLabel l2) => FromRDS (RDA (Tagged l2 t ': rs)) where
     fromRDS = do
         getListHdr
-        x <- fromRDS :: Get (LVPair l2 t)
+        x <- fromRDS :: Get (Tagged l2 t)
         RDA xs <- fromRDS :: Get (RDA rs)
         return (RDA (x `HCons` xs))
 
@@ -592,7 +625,7 @@
 
 A typical type would be
 
-> Record '[LVPair l1 (LVPair m1 x), LVPair l2 (LVPair m2 x)]
+> Record '[Tagged l1 (Tagged m1 x), Tagged l2 (Tagged m2 x)]
 
 The outer labels (@l1@, @l2@) are the haskell-side. The inner labels
 are the @m1@ @m2@ which are the names of the variables on the R side.
@@ -608,9 +641,9 @@
     hdr' <- fmap (BS.toString) $ getByteString (BS.length (BS.fromString hdr))
     unless (hdr == hdr') $ fail "wrong header"
     [{- 2 , 196609, 131840 -} _, _, _ :: Int32 ] <- replicateM 3 get
-    fmap (\(RDA a) -> Record (hMap1 FLVPair (a::HList __) )) fromRDS
+    fmap (\(RDA a) -> Record (hMap FLVPair (a::HList __) )) fromRDS
 
-type FromRDA a r = (HMap1 FLVPair a r, FromRDS (RDA a))
+type FromRDA a r = (HMapCxt FLVPair (HList a) (HList r) a r, FromRDS (RDA a))
 
 -- * tests
 
diff --git a/src/RlangQQ/FN.hs b/src/RlangQQ/FN.hs
--- a/src/RlangQQ/FN.hs
+++ b/src/RlangQQ/FN.hs
@@ -4,7 +4,7 @@
 {-# LANGUAGE FlexibleInstances #-}
 {-# LANGUAGE TypeFamilies #-}
 {-# LANGUAGE MultiParamTypeClasses #-}
--- | 'hMap' 'FN' drops the inner LVPair, which was
+-- | 'hMap' 'FN' drops the inner Tagged, which was
 -- just used to keep track of the variable name on the
 -- R side.
 --
@@ -15,10 +15,10 @@
 import GHC.TypeLits
 data FN = FN
 
-instance (a ~ (LVPair (t :: k) (LVPair (t2::k) x)), b ~LVPair t x) => ApplyAB FN a b where
-    applyAB _ (LVPair (LVPair x)) = LVPair x
+instance (a ~ (Tagged (t :: k) (Tagged (t2::k) x)), b ~Tagged t x) => ApplyAB FN a b where
+    applyAB _ (Tagged (Tagged x)) = Tagged x
 
 data NoLabel = NoLabel
-instance (la ~ LVPair "" a) => ApplyAB NoLabel a la where
-    applyAB _ x = LVPair x
+instance (la ~ Tagged "" a) => ApplyAB NoLabel a la where
+    applyAB _ x = Tagged x
 
diff --git a/src/RlangQQ/Internal.hs b/src/RlangQQ/Internal.hs
--- a/src/RlangQQ/Internal.hs
+++ b/src/RlangQQ/Internal.hs
@@ -1,7 +1,3 @@
-{-# LANGUAGE ViewPatterns #-}
-{-# LANGUAGE PatternGuards #-}
-{-# LANGUAGE TypeOperators #-}
-{-# LANGUAGE FlexibleInstances #-}
 {-# LANGUAGE TemplateHaskell #-}
 module RlangQQ.Internal where
 
@@ -23,6 +19,7 @@
 
 import qualified Data.ByteString.Lazy.UTF8 as B
 import qualified Data.ByteString.Lazy as B
+import qualified Data.ByteString.Lazy
 import qualified Data.ByteString.Lazy.Char8 as B8
 
 import Control.Monad.State
@@ -32,12 +29,14 @@
 import qualified Data.Map as M
 import Data.Foldable (foldMap)
 
+import System.FilePath
 
 import Paths_Rlang_QQ
 
 import RlangQQ.Binary
 import RlangQQ.Antiquote
 import RlangQQ.FN
+-- import RlangQQ.ParseKnitted
 
 import Control.Concurrent.Chan
 import Control.Concurrent.MVar
@@ -51,21 +50,26 @@
 -- | going via binary serialization (classes from "RlangQQ.Binary"). This is used in 'RlangQQ.r'
 quoteRExpression2 i returnChan str0 = do
     let rawFile, mdFile, rmdFile, inputFile, inputFile2, outputFile, figPath :: String
-        rawFile = printf "Rtmp/raw%d.R" (i :: Int)
-        rmdFile = printf "Rtmp/raw%d.Rmd" i
-        mdFile = printf "Rtmp/raw%d.md" i
-        figPath = printf "Rtmp/fig%d/" i
-        inputFile = printf "Rtmp/%d_hs.rdx" i
+        rawFile    = printf "Rtmp/raw%d.R" (i :: Int)
+        rmdFile    = printf "Rtmp/raw%d.Rmd" i
+        rmdFile2   = printf "Rtmp/raw%d_.Rmd" i
+        mdFile     = printf "Rtmp/raw%d.md" i
+        figPath    = printf "Rtmp/fig%d/" i
+        inputFile  = printf "Rtmp/%d_hs.rdx" i
         inputFile2 = printf "Rtmp/%d_hs2.rdx" i
         outputFile = printf "Rtmp/%d_r.rdx" i
 
-        (knitrHdr, (str, addAntiquotes)) = fmap withRawFile (splitKnitrHdr str0)
+        -- the print('') is to fix a bug that somehow drops the first
+        -- expression sent to R
+        (knitrHdr, withRawFile -> (("setwd('../');"++) -> str, addAntiquotes))
+            = splitKnitrHdr str0
+    let inRmdChunk s = unlines ["```{r " ++ knitrHdr ++ "}", s, "```"]
 
     variables <- runIO $ do
         t <- getDataFileName "Tree.R"
         createDirectoryIfMissing False "Rtmp"
         writeFile rawFile str
-        writeFile rmdFile (unlines ["```{r " ++ knitrHdr ++ "}", str, "```"])
+        writeFile rmdFile (inRmdChunk str)
         rt <- readProcess "R" ["--no-save","--quiet"]
             $ printf "source('%s'); rlangQQ_toTree(parse('%s'))" t rawFile
         case parseString parseTree mempty rt of
@@ -132,26 +136,33 @@
             let mapSnd (Record x) = Record (hMap FN x)
                 fixTy x = x `asTypeOf` Record $sampOutput
                 fixTy2 x = x `asTypeOf` Record $sampOutput2
-            in fixTy2 . mapSnd . fixTy . fromRDA <$> B.readFile outputFile |]
+            in do
+              cts <- B.readFile outputFile
+              -- lazy IO makes for confusings: possibly better to switch
+              -- over to strict BS instead of this
+              Data.ByteString.Lazy.length cts `seq` return ()
+              return . fixTy2 . mapSnd . fixTy $ fromRDA cts  |]
 
         outVars :: [String]
         outVars = [ s  | (s, intent) <- M.toList variables
                         ++ M.toList chanVars {- necessary? -}, notIn intent ]
 
-
-        writeOutputFile | [] <- outVars = [| "" |]
-            | otherwise = stringE (printf "save(%s, file='%s', compress='gzip');"
+        saveRVars :: String
+        saveRVars
+            | [] <- outVars = ""
+            | otherwise = printf "save(%s, file='%s', compress='gzip');"
                                     (intercalate "," $ reverse outVars)
-                                    outputFile)
+                                    (takeFileName outputFile)
+        rmd2Content :: String
+        rmd2Content = inRmdChunk str ++ inRmdChunk saveRVars
 
         runRNoChan :: ExpQ
         runRNoChan  = do
             [| readProcess "R" ["--no-save", "--quiet"] $ concat
                     [ $(stringE (printf "library(knitr);\
-                                       \opts_chunk$set(fig.path='%s');\
+                                       \opts_chunk$set(fig.path='%s',tidy=F);\
                                        \load('%s');" figPath inputFile)),
-                      $(stringE (printf "knit('%s', output='%s', quiet=TRUE);" rmdFile mdFile)),
-                      $writeOutputFile ]
+                      $(stringE (printf "knit('%s', output='%s', quiet=TRUE);" rmdFile2 mdFile))]
                     |]
 
 
@@ -178,8 +189,8 @@
                                         \ string that will never happen by chance\""
                 forkIO $ forever $ do
                     withOutputFn <- $writeChanInput
-                    hPutStrLn i $ printf "load('%s'); knit('%s', output='%s', quiet=TRUE); %s %s"
-                                        inputFile2 rmdFile mdFile $writeOutputFile
+                    hPutStrLn i $ printf "load('%s'); knit('%s', output='%s', quiet=TRUE); %s"
+                                        inputFile2 rmdFile2 mdFile
                                         uniqueDoneString
                     hFlush i
                     $(whenOutVars [|  putMVar outVar withOutputFn |] )
@@ -200,17 +211,18 @@
                                     -- but that doesn't typecheck here...
                                     )
                                 |])
-
             return chOut
            |]
 
+    runIO $ writeFile rmdFile2 rmd2Content
+
     addAntiquotes [| do
         {- already done, but Rtmp could have moved
            since compile time -}
         createDirectoryIfMissing False "Rtmp"
         do
-            f <- doesFileExist rawFile
-            unless f $ writeFile rawFile str
+            f <- doesFileExist rmdFile2
+            unless f $ writeFile rmdFile2 rmd2Content
 
         $writeInputFile
         $(if M.size chanVars == 0 then [| do
diff --git a/src/RlangQQ/MakeRecord.hs b/src/RlangQQ/MakeRecord.hs
--- a/src/RlangQQ/MakeRecord.hs
+++ b/src/RlangQQ/MakeRecord.hs
@@ -1,4 +1,3 @@
-{-# LANGUAGE ConstraintKinds, DataKinds,GADTs,FlexibleContexts, FlexibleInstances,KindSignatures,MultiParamTypeClasses #-}
 -- | functions to help making lists for consumption on the R side
 module RlangQQ.MakeRecord where
 
@@ -11,7 +10,7 @@
 -- | convert a haskell list into a record with labels all of type \"\". The length
 -- of the list is decided by the (type of the) first argument which is a 'HNat'
 listToRecN :: ListToRecN __ (n :: HNat) x r => Proxy n -> [x] -> Record r
-listToRecN n xs = Record $ hMap2 NoLabel $ flip evalState xs $ hSequence $ hReplicate n comp
+listToRecN n xs = Record $ hMap NoLabel $ flip evalState xs $ hSequence $ hReplicate n comp
     where comp = do
                 x : xs' <- get
                 return () :: State [x] ()
@@ -20,11 +19,11 @@
 
 type ListToRecN __ (n :: HNat) x r = (HReplicate n (StateT [x] Identity x),
     HSequence (StateT [x] Identity) (HReplicateR n (StateT [x] Identity x)) __,
-    HMap2 NoLabel __ r)
+    HMapCxt NoLabel (HList __) (HList r) __ r)
 
 
 
 data NoLabel = NoLabel
-instance (LVPair "" a ~ la) => ApplyAB NoLabel a la where
-    applyAB _ x = LVPair x
+instance (Tagged "" a ~ la) => ApplyAB NoLabel a la where
+    applyAB _ x = Tagged x
 
diff --git a/src/RlangQQ/ParseKnitted.hs b/src/RlangQQ/ParseKnitted.hs
new file mode 100644
--- /dev/null
+++ b/src/RlangQQ/ParseKnitted.hs
@@ -0,0 +1,64 @@
+{-# LANGUAGE ViewPatterns #-}
+module RlangQQ.ParseKnitted
+  (parseKnitted,
+   KnitInteraction(..),
+   KnitOutput(..)) where
+import Data.List.Split hiding (chunk)
+import Data.List
+import Data.Maybe
+import Data.Char
+
+-- | splits up the contents of the .md file generated by @knitr::knit@
+parseKnitted file = grp . chunk . lines $ file
+
+data KnitInteraction = KnitInteraction String [KnitOutput]
+  deriving (Show)
+
+data KnitOutput
+    = KnitAsIs String -- ^ has markup to be interpreted
+    | KnitPrint String
+    | KnitWarning String
+    | KnitError String
+    | KnitImage String FilePath -- ^ @![caption](pathToImage)@
+  deriving (Show)
+
+
+chunk ( (stripPrefix "```" -> Just x) : xs) = 
+    let (a,b) = break (isPrefixOf "```") xs
+    in (x,a) : chunk b
+chunk ("" : xs) = chunk xs
+chunk [] = []
+
+-- | depends on knitr's default opts_chunk$get(comment) = "##"
+classify :: [String] -> [KnitOutput]
+classify (x:xs) | Just r <- stripPrefix "## Warning: " x =
+    [KnitWarning (unlines $ r : map (tryStripPrefix "## ") xs)]
+classify (x:xs) | Just r <- stripPrefix "## Error: " x =
+    [KnitError (unlines $ r : map (tryStripPrefix "## ") xs)]
+classify xs = splitImg xs
+
+splitImg (x:xs) | Just r <- stripPrefix "![" x =
+  let end s = case splitOn "](" s of
+              [a,b] -> Just (KnitImage a b)
+              _ -> Nothing
+      -- plot(lm(y ~ x)) comes out as ![caption1](a) ![caption2](b)
+      getCaps [] = []
+      getCaps s = mapMaybe end $ splitOn ") ![" (r ++ "![")
+  in getCaps r ++ splitImg xs
+splitImg [] = []
+splitImg xs @ (x : _) | "## " `isPrefixOf` x =
+  let (a,b) = span (isPrefixOf "## ") xs
+  in KnitPrint (unlines $ map (tryStripPrefix "## ") a) : splitImg b
+splitImg xs =
+  let (a,b) = break (\x -> any (`isPrefixOf` x) ["![","## "]) xs
+  in KnitAsIs (unlines a) : splitImg b
+
+tryStripPrefix p x = fromMaybe x $ stripPrefix p x 
+
+grp (((/= "") -> True, a) : xs) =
+    let (b,c) = span ((== "") . fst) xs
+    in KnitInteraction (unlines a) (filter notBlank $ concatMap (classify . snd) b) : grp c
+grp [] = []
+
+notBlank (KnitPrint x) = not (all isSpace x)
+notBlank _ = True
