diff --git a/bench/SalakTomlBench.hs b/bench/SalakTomlBench.hs
--- a/bench/SalakTomlBench.hs
+++ b/bench/SalakTomlBench.hs
@@ -1,4 +1,4 @@
-module SalakTomlBench where
+module Main where
 
 import           Criterion.Main
 import           Salak
diff --git a/salak-toml.cabal b/salak-toml.cabal
--- a/salak-toml.cabal
+++ b/salak-toml.cabal
@@ -1,6 +1,6 @@
 cabal-version: 1.12
 name: salak-toml
-version: 0.3.4.1
+version: 0.3.5
 license: MIT
 license-file: LICENSE
 copyright: 2019 Daniel YU
@@ -21,19 +21,21 @@
     other-modules:
         Paths_salak_toml
     default-language: Haskell2010
-    default-extensions: RecordWildCards TupleSections OverloadedStrings
-                        NoOverloadedLists ScopedTypeVariables FlexibleInstances
-                        MultiParamTypeClasses DeriveGeneric FlexibleContexts RankNTypes
+    default-extensions: BangPatterns CPP DefaultSignatures
+                        DeriveFunctor DeriveGeneric FlexibleContexts FlexibleInstances
+                        GeneralizedNewtypeDeriving MultiParamTypeClasses NoOverloadedLists
+                        OverloadedStrings RankNTypes RecordWildCards ScopedTypeVariables
+                        TupleSections TypeOperators
     ghc-options: -Wall -fno-warn-orphans -fno-warn-missing-signatures
     build-depends:
         base >=4.10 && <5,
-        salak >=0.3.4.1 && <0.4,
+        salak >=0.3.5 && <0.4,
         text >=1.2.3.1 && <1.3,
         time >=1.8.0.2 && <1.9,
         tomland >=1.0 && <1.2,
         unordered-containers >=0.2.10.0 && <0.3
 
-test-suite salak-toml-spec
+test-suite salak-toml-test
     type: exitcode-stdio-1.0
     main-is: SalakTomlSpec.hs
     hs-source-dirs: test src
@@ -41,18 +43,20 @@
         Salak.Toml
         Paths_salak_toml
     default-language: Haskell2010
-    default-extensions: RecordWildCards TupleSections OverloadedStrings
-                        NoOverloadedLists ScopedTypeVariables FlexibleInstances
-                        MultiParamTypeClasses DeriveGeneric FlexibleContexts RankNTypes
+    default-extensions: BangPatterns CPP DefaultSignatures
+                        DeriveFunctor DeriveGeneric FlexibleContexts FlexibleInstances
+                        GeneralizedNewtypeDeriving MultiParamTypeClasses NoOverloadedLists
+                        OverloadedStrings RankNTypes RecordWildCards ScopedTypeVariables
+                        TupleSections TypeOperators
     ghc-options: -Wall -fno-warn-orphans -fno-warn-missing-signatures
-                 -main-is SalakTomlSpec.main
+                 -rtsopts -threaded -with-rtsopts=-K1K
     build-depends:
         QuickCheck >=2.13.2 && <2.14,
         base >=4.10 && <5,
         exceptions >=0.10.2 && <0.11,
         hspec ==2.*,
         mtl >=2.2.2 && <2.3,
-        salak >=0.3.4.1 && <0.4,
+        salak >=0.3.5 && <0.4,
         text >=1.2.3.1 && <1.3,
         time >=1.8.0.2 && <1.9,
         tomland >=1.0 && <1.2,
@@ -65,15 +69,17 @@
     other-modules:
         Salak.Toml
     default-language: Haskell2010
-    default-extensions: RecordWildCards TupleSections OverloadedStrings
-                        NoOverloadedLists ScopedTypeVariables FlexibleInstances
-                        MultiParamTypeClasses DeriveGeneric FlexibleContexts RankNTypes
+    default-extensions: BangPatterns CPP DefaultSignatures
+                        DeriveFunctor DeriveGeneric FlexibleContexts FlexibleInstances
+                        GeneralizedNewtypeDeriving MultiParamTypeClasses NoOverloadedLists
+                        OverloadedStrings RankNTypes RecordWildCards ScopedTypeVariables
+                        TupleSections TypeOperators
     ghc-options: -Wall -fno-warn-orphans -fno-warn-missing-signatures
-                 -main-is SalakTomlBench.main -rtsopts -threaded -with-rtsopts=-K1K
+                 -rtsopts -threaded -with-rtsopts=-K1K
     build-depends:
         base >=4.10 && <5,
         criterion >=1.5.5.0 && <1.6,
-        salak >=0.3.4.1 && <0.4,
+        salak >=0.3.5 && <0.4,
         text >=1.2.3.1 && <1.3,
         time >=1.8.0.2 && <1.9,
         tomland >=1.0 && <1.2,
diff --git a/src/Salak/Toml.hs b/src/Salak/Toml.hs
--- a/src/Salak/Toml.hs
+++ b/src/Salak/Toml.hs
@@ -1,8 +1,4 @@
-{-# LANGUAGE FlexibleContexts  #-}
 {-# LANGUAGE GADTs             #-}
-{-# LANGUAGE NoOverloadedLists #-}
-{-# LANGUAGE RecordWildCards   #-}
-{-# LANGUAGE TupleSections     #-}
 -- |
 -- Module:      Salak.Toml
 -- Copyright:   (c) 2019 Daniel YU
diff --git a/test/SalakTomlSpec.hs b/test/SalakTomlSpec.hs
--- a/test/SalakTomlSpec.hs
+++ b/test/SalakTomlSpec.hs
@@ -1,13 +1,4 @@
-{-# LANGUAGE DataKinds             #-}
-{-# LANGUAGE DeriveGeneric         #-}
-{-# LANGUAGE FlexibleContexts      #-}
-{-# LANGUAGE FlexibleInstances     #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
-{-# LANGUAGE OverloadedStrings     #-}
-{-# LANGUAGE RecordWildCards       #-}
-{-# LANGUAGE ScopedTypeVariables   #-}
-
-module SalakTomlSpec where
+module Main where
 
 import           Control.Monad.Reader
 import           Data.List            (intercalate)
