@@ -126,6 +126,9 @@ import Data.Aeson.Types.Internal ((<?>), Pair, JSONPathElement(Key))
126import Data.Aeson.Types.FromJSON (parseOptionalFieldWith)
126import Data.Aeson.Types.FromJSON (parseOptionalFieldWith)
127import Control.Monad (liftM2, unless, when)
127import Control.Monad (liftM2, unless, when)
128import Data.Foldable (foldr')
128import Data.Foldable (foldr')
129+#if MIN_VERSION_template_haskell(2,8,0) && !MIN_VERSION_template_haskell(2,10,0)
130+import Data.List (nub)
129import Data.List (find, foldl', genericLength , intercalate , intersperse, partition, union)
132import Data.List (find, foldl', genericLength , intercalate , intersperse, partition, union)
130import Data.List.NonEmpty ((<|), NonEmpty((:|)))
133import Data.List.NonEmpty ((<|), NonEmpty((:|)))
131import Data.Map (Map)
134import Data.Map (Map)
@@ -142,6 +145,7 @@ import Language.Haskell.TH.Lib (starK)
143#if MIN_VERSION_template_haskell(2,8,0) && !(MIN_VERSION_template_haskell(2,10,0))
146#if MIN_VERSION_template_haskell(2,8,0) && !(MIN_VERSION_template_haskell(2,10,0))
144import Language.Haskell.TH.Syntax (mkNameG_tc)
147import Language.Haskell.TH.Syntax (mkNameG_tc)
146import Text.Printf (printf)
150import Text.Printf (printf)
147import qualified Data.Aeson as A
151import qualified Data.Aeson as A