diff --git a/GenerateJSONParser.hs b/GenerateJSONParser.hs
--- a/GenerateJSONParser.hs
+++ b/GenerateJSONParser.hs
@@ -38,6 +38,7 @@
 defineFlag "t:test"            False                 "Try to run generated parser after"
 defineFlag "d:debug"           False                 "Set this flag to see more debugging info"
 defineFlag "y:typecheck"       True                  "Set this flag to typecheck after unification"
+defineFlag "p:preprocessor"    False                 "Work as GHC preprocessor (skip preprocessor pragma)"
 defineFlag "fakeFlag"          True                  "Ignore this flag - it doesn't exist!!! It is workaround to library problem."
 
 -- | Works like @Debug.trace@ when the --debug flag is enabled, and does nothing otherwise.
@@ -60,7 +61,7 @@
 extractTypeFromJSONFile inputFilename =
       withFileOrHandle inputFilename ReadMode stdin $ \hIn ->
         -- First we decode JSON input into Aeson's Value type
-        do bs <- BSL.hGetContents hIn
+        do bs <- preprocess <$> BSL.hGetContents hIn
            Text.hPutStrLn stderr $ "Processing " `Text.append` Text.pack (show inputFilename)
            myTrace ("Decoded JSON: " ++ pretty (decode bs :: Maybe Value))
            case decode bs of
@@ -73,6 +74,16 @@
                (v `typeCheck` t) `unless` fatal ("Typecheck against base type failed for "
                                                     `Text.append` Text.pack inputFilename)
                return $ Just (inputFilename, t, v)
+
+-- | Perform preprocessing of JSON input to drop initial pragma.
+preprocess :: BSL.ByteString -> BSL.ByteString
+preprocess | flags_preprocessor = dropPragma
+           | otherwise          = id
+
+-- | Drop initial pragma.
+dropPragma :: BSL.ByteString -> BSL.ByteString
+dropPragma input | "{-#" `BSL.isPrefixOf` input = BSL.dropWhile (/='\n') input
+                 | otherwise                    = input
 
 -- | Type checking all input files with given type,
 -- and return a list of filenames for files that passed the check.
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -109,3 +109,8 @@
 ```
 
 Real-world use case examples are provided in the package [source repository](https://github.com/mgajda/json-autotype/tree/master/test).
+
+Other approaches:
+=================
+
+There is a [json-sampler](https://maxs.io/generating-types-from-json-samples/) that allows to make simpler data structure from JSON examples, but doesn't seem to perform unification, nor is it suitable for big APIs.
diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,5 +1,9 @@
 Changelog
 =========
+    1.0.7  Jul 2015
+
+        * Dependency bump for lens and vector.
+
     1.0.6  Jun 2015
 
         * Make lens and aeson versions consistent in the *.cabal file.
diff --git a/json-autotype.cabal b/json-autotype.cabal
--- a/json-autotype.cabal
+++ b/json-autotype.cabal
@@ -1,6 +1,6 @@
 -- Build information for the package.
 name:                json-autotype
-version:             1.0.6
+version:             1.0.7
 synopsis:            Automatic type declaration for JSON input data
 description:         Generates datatype declarations with Aeson's "FromJSON" instances
                      from a set of example ".json" files.
@@ -69,7 +69,7 @@
                        hashable             >=1.2  && <1.3,
                        hint                 >=0.3  && <0.5,
                        hflags               >=0.3  && <0.5,
-                       lens                 >=4.1  && <4.12,
+                       lens                 >=4.1  && <4.13,
                        mtl                  >=2.1  && <2.3,
                        pretty               >=1.1  && <1.3,
                        process              >=1.1  && <1.4,
@@ -77,7 +77,7 @@
                        text                 >=1.1  && <1.4,
                        uniplate             >=1.6  && <1.7,
                        unordered-containers >=0.2  && <0.3,
-                       vector               >=0.9  && <0.11
+                       vector               >=0.9  && <0.12
   default-language:    Haskell2010
 
 executable json-autotype
@@ -108,7 +108,7 @@
                        hashable             >=1.2  && <1.3,
                        hint                 >=0.4  && <0.5,
                        hflags               >=0.3  && <0.5,
-                       lens                 >=4.1  && <4.12,
+                       lens                 >=4.1  && <4.13,
                        mtl                  >=2.1  && <2.3,
                        pretty               >=1.1  && <1.3,
                        process              >=1.1  && <1.4,
@@ -116,7 +116,7 @@
                        text                 >=1.1  && <1.4,
                        uniplate             >=1.6  && <1.7,
                        unordered-containers >=0.2  && <0.3,
-                       vector               >=0.9  && <0.11
+                       vector               >=0.9  && <0.12
   -- hs-source-dirs:      
   default-language:    Haskell2010
 
@@ -147,7 +147,7 @@
                        directory            >=1.1  && <1.3,
                        filepath             >=1.3  && <1.5,
                        hashable             >=1.2  && <1.3,
-                       lens                 >=4.1  && <4.12,
+                       lens                 >=4.1  && <4.13,
                        mtl                  >=2.1  && <2.3,
                        pretty               >=1.1  && <1.3,
                        process              >=1.1  && <1.4,
@@ -156,7 +156,7 @@
                        text                 >=1.1  && <1.4,
                        uniplate             >=1.6  && <1.7,
                        unordered-containers >=0.2  && <0.3,
-                       vector               >=0.9  && <0.11,
+                       vector               >=0.9  && <0.12,
                        QuickCheck           >=2.4  && <3.0
   -- hs-source-dirs:      
   default-language:    Haskell2010
@@ -189,7 +189,7 @@
                        filepath             >=1.3  && <1.5,
                        hashable             >=1.2  && <1.3,
                        hflags               >=0.3  && <0.5,
-                       lens                 >=4.1  && <4.12,
+                       lens                 >=4.1  && <4.13,
                        mtl                  >=2.1  && <2.3,
                        pretty               >=1.1  && <1.3,
                        process              >=1.1  && <1.4,
@@ -198,7 +198,7 @@
                        text                 >=1.1  && <1.4,
                        uniplate             >=1.6  && <1.7,
                        unordered-containers >=0.2  && <0.3,
-                       vector               >=0.9  && <0.11,
+                       vector               >=0.9  && <0.12,
                        QuickCheck           >=2.4  && <3.0
   -- hs-source-dirs:      
   default-language:    Haskell2010
