diff --git a/Justfile b/Justfile
--- a/Justfile
+++ b/Justfile
@@ -1,9 +1,12 @@
 clean:
     sn c .
-    rm -f lol.html
 
-lol:
-    bench "sn help" "tomlcheck --file data/example.toml" --output lol.html
+compare:
+    cabal new-build -O2 --constraint='tomlcheck +native'
+    cp $(fd -IH 'tomlcheck$' | tail -n1) ~/.local/bin
+    bench "rust-tomlcheck --file data/sample.toml" "tomlcheck --file data/sample.toml" "rust-tomlcheck --file data/bad.toml" "tomlcheck --file data/bad.toml"
+    
+#bench "rust-tomlcheck --file data/example.toml" "tomlcheck --file data/example.toml" "rust-tomlcheck --file data/good.toml" "tomlcheck --file data/good.toml"
 
 next:
     @export VERSION=$(cat tomlcheck.cabal | grep -P -o '\d+\.\d+\.\d+\.\d+' tomlcheck.cabal | head -n1 | awk -F. '{$NF+=1; print $0}' | sed 's/ /\./g') && echo $VERSION && sed -i "2s/[0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+/$VERSION/" tomlcheck.cabal
@@ -25,7 +28,7 @@
     git push origin --tags
 
 name:
-    github-release edit -s $(cat .git-token) -u vmchale -r tomlcheck -n $(madlang run ~/programming/madlang/releases/releases.mad) -t "$(grep -P -o '\d+\.\d+\.\d+\.\d+' tomlcheck.cabal | head -n1)"
+    github-release edit -s $(cat .git-token) -u vmchale -r tomlcheck -n "$(madlang run ~/programming/madlang/releases/releases.mad)" -t "$(grep -P -o '\d+\.\d+\.\d+\.\d+' tomlcheck.cabal | head -n1)"
 
 check:
     git diff master origin/master
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -24,28 +24,3 @@
  $ cabal update
  $ cabal install tomlcheck
 ```
-
-## Known Deficiencies
-
-  * No Windows binaries
-  * Slow on large files (>7000 lines)
-
-## Cool Facts
-  
-  * It's really fast
-  * It uses laziness to make checking schnell yet robust
-
-```
--------------------------------------------------------------------------------
- Language            Files        Lines         Code     Comments       Blanks
--------------------------------------------------------------------------------
- Cabal                   1           58           53            1            4
- Haskell                 3           40           28            4            8
- Justfile                1           21           16            0            5
- Markdown                2           42           42            0            0
- TOML                    3           87           78            0            9
- YAML                    1            9            9            0            0
--------------------------------------------------------------------------------
- Total                  11          257          226            5           26
--------------------------------------------------------------------------------
-```
diff --git a/appveyor.yml b/appveyor.yml
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -17,17 +17,19 @@
   - stack setup > nul
   - echo "" | stack --no-terminal install
   - ps: Get-ChildItem . -name -recurse tomlcheck.exe
-  - echo $APPVEYOR_REPO_TAG_NAME
+  - ps: Copy-Item c:\\stack\\.stack-work\\install\\afd8a623\\bin\\tomlcheck.exe tomlcheck-x86_64-pc-windows.exe
+  - ps: Push-AppveyorArtifact tomlcheck-x86_64-pc-windows.exe
 
 deploy:
-  artifact: C:\\stack\\.stack-work\\install\\afd8a623\\bin\\tomlcheck.exe
+  artifacts: tomlcheck-x86_64-pc-windows.exe
   provider: GitHub
   on:
-    apveyor_repo_tag: true
+    appveyor_repo_tag: true
   auth_token:
     secure: 0qzMr6xmEwRoj/9TJOgDuW/LXWfGVM/4A7kvAXGe0BAwWCF13AWE2SARrYkyc3ji
 
 branches:
   only:
     # Release tags
+    - master
     - /\d+\.\d+\.\d+\.\d+.*$/
diff --git a/cabal.project.local b/cabal.project.local
--- a/cabal.project.local
+++ b/cabal.project.local
@@ -1,2 +1,2 @@
 optimization: 1
-constraints: tomlcheck +development
+constraints: tomlcheck +development +optimize
diff --git a/src/Toml/Checker.hs b/src/Toml/Checker.hs
--- a/src/Toml/Checker.hs
+++ b/src/Toml/Checker.hs
@@ -28,5 +28,5 @@
     let path = unHelpful $ file x
     contents <- TIO.readFile path
     case parseTomlDoc path contents of
-        Right{} -> pure ()
+        Right _ -> pure ()
         Left e  -> putStrLn $ parseErrorPretty e
diff --git a/stack.yaml b/stack.yaml
--- a/stack.yaml
+++ b/stack.yaml
@@ -3,7 +3,7 @@
   - './'
 extra-deps:
   - megaparsec-6.2.0
-  - htoml-megaparsec-1.0.1.1
+  - htoml-megaparsec-1.0.1.6
   - composition-prelude-0.1.1.0
 flags: {}
 extra-package-dbs: []
diff --git a/tomlcheck.cabal b/tomlcheck.cabal
--- a/tomlcheck.cabal
+++ b/tomlcheck.cabal
@@ -1,5 +1,5 @@
 name:                tomlcheck
-version:             0.1.0.2
+version:             0.1.0.8
 synopsis:            Command-line tool to check syntax of TOML files
 description:         This is a command-line wrapper around htoml-megaparsec.
                      It is intended to be used as a syntax checker that can be
@@ -20,6 +20,17 @@
                    , Justfile
 Extra-doc-files:     README.md
 
+Flag optimize {
+  Description: Optimize with -O2
+  default: False
+}
+
+Flag native {
+  Description: Target current CPU
+  manual: True
+  default: False
+}
+
 Flag development {
   Description: Enable `-Werror`
   manual: True
@@ -30,13 +41,15 @@
   hs-source-dirs:      src
   exposed-modules:     Toml.Checker
   build-depends:       base >= 4.8 && < 5
-                     , htoml-megaparsec >= 1.0.1.1
+                     , htoml-megaparsec >= 1.0.1.6
                      , optparse-generic
                      , megaparsec >= 6.0
                      , text
   default-language:    Haskell2010
+  if flag(native)
+    ghc-options:       -opta-mtune=native -optc-mtune=native
   if flag(development) && impl(ghc >= 8.0)
-    ghc-options: -Werror
+    ghc-options:       -Werror
   if impl(ghc >= 8.0)
     ghc-options:       -Wincomplete-uni-patterns -Wincomplete-record-updates -Wcompat
   ghc-options:         -Wall
@@ -48,8 +61,12 @@
   build-depends:       base
                      , tomlcheck
   default-language:    Haskell2010
+  if flag(native)
+    ghc-options:       -opta-mtune=native -optc-mtune=native
+  if flag(optimize)
+    ghc-options:       -O2
   if flag(development)
-    ghc-options: -Werror
+    ghc-options:       -Werror
   if impl(ghc >= 8.0)
     ghc-options:       -Wincomplete-uni-patterns -Wincomplete-record-updates -Wcompat
   ghc-options:         -Wall
