packages feed

duckling-0.2.0.0: duckling.cabal

cabal-version:       2.2
-- Copyright (c) 2016-present, Facebook, Inc.
-- All rights reserved.
--
-- This source code is licensed under the BSD-style license found in the
-- LICENSE file in the root directory of this source tree.

name:                duckling
version:             0.2.0.0
synopsis:            A Haskell library for parsing text into structured data.
description:
  Duckling is a library for parsing text into structured data.
homepage:            https://github.com/facebook/duckling#readme
bug-reports:         https://github.com/facebook/duckling/issues
license:             BSD-3-Clause
license-files:       LICENSE
author:              Facebook, Inc.
maintainer:          duckling-team@fb.com
copyright:           Copyright (c) 2014-present, Facebook, Inc.
category:            Systems
build-type:          Simple
stability:           alpha
tested-with:
  GHC==8.4.4,
  GHC==8.6.5,
  GHC==8.8.4,
  GHC==8.10.3,
  GHC==9.0.1

extra-source-files:    README.md, CHANGELOG.md

library
  exposed-modules:     Duckling.Core
                     , Duckling.Debug
                     , Duckling.Testing.Types
  -- ------------------------------------------------------------------
  -- Core
                     , Duckling.Api
                     , Duckling.Engine
                     , Duckling.Engine.Regex
                     , Duckling.Locale
                     , Duckling.Region
                     , Duckling.Resolve
                     , Duckling.Types
                     , Duckling.Types.Document
                     , Duckling.Types.Stash

  -- ------------------------------------------------------------------
  -- Rules
                     , Duckling.Rules
                     , Duckling.Rules.Common
                     , Duckling.Rules.AF
                     , Duckling.Rules.AR
                     , Duckling.Rules.BG
                     , Duckling.Rules.BN
                     , Duckling.Rules.CA
                     , Duckling.Rules.CS
                     , Duckling.Rules.DA
                     , Duckling.Rules.DE
                     , Duckling.Rules.EL
                     , Duckling.Rules.EN
                     , Duckling.Rules.ES
                     , Duckling.Rules.ET
                     , Duckling.Rules.FI
                     , Duckling.Rules.FA
                     , Duckling.Rules.FR
                     , Duckling.Rules.GA
                     , Duckling.Rules.HE
                     , Duckling.Rules.HI
                     , Duckling.Rules.HR
                     , Duckling.Rules.HU
                     , Duckling.Rules.ID
                     , Duckling.Rules.IS
                     , Duckling.Rules.IT
                     , Duckling.Rules.JA
                     , Duckling.Rules.KA
                     , Duckling.Rules.KM
                     , Duckling.Rules.KN
                     , Duckling.Rules.KO
                     , Duckling.Rules.LO
                     , Duckling.Rules.ML
                     , Duckling.Rules.MN
                     , Duckling.Rules.MY
                     , Duckling.Rules.NB
                     , Duckling.Rules.NE
                     , Duckling.Rules.NL
                     , Duckling.Rules.PL
                     , Duckling.Rules.PT
                     , Duckling.Rules.RO
                     , Duckling.Rules.RU
                     , Duckling.Rules.SK
                     , Duckling.Rules.SV
                     , Duckling.Rules.SW
                     , Duckling.Rules.TA
                     , Duckling.Rules.TE
                     , Duckling.Rules.TH
                     , Duckling.Rules.TR
                     , Duckling.Rules.UK
                     , Duckling.Rules.VI
                     , Duckling.Rules.ZH

  -- ------------------------------------------------------------------
  -- Ranking
                     , Duckling.Ranking.Types
                     , Duckling.Ranking.Extraction
                     , Duckling.Ranking.Rank
                     , Duckling.Ranking.Classifiers
                     , Duckling.Ranking.Classifiers.AF_XX
                     , Duckling.Ranking.Classifiers.AR_EG
                     , Duckling.Ranking.Classifiers.AR_XX
                     , Duckling.Ranking.Classifiers.BG_XX
                     , Duckling.Ranking.Classifiers.BN_XX
                     , Duckling.Ranking.Classifiers.CA_XX
                     , Duckling.Ranking.Classifiers.CS_XX
                     , Duckling.Ranking.Classifiers.DA_XX
                     , Duckling.Ranking.Classifiers.DE_XX
                     , Duckling.Ranking.Classifiers.EL_XX
                     , Duckling.Ranking.Classifiers.EN_CA
                     , Duckling.Ranking.Classifiers.EN_GB
                     , Duckling.Ranking.Classifiers.EN_US
                     , Duckling.Ranking.Classifiers.EN_XX
                     , Duckling.Ranking.Classifiers.ES_XX
                     , Duckling.Ranking.Classifiers.ET_XX
                     , Duckling.Ranking.Classifiers.FI_XX
                     , Duckling.Ranking.Classifiers.FA_XX
                     , Duckling.Ranking.Classifiers.FR_XX
                     , Duckling.Ranking.Classifiers.GA_XX
                     , Duckling.Ranking.Classifiers.HE_XX
                     , Duckling.Ranking.Classifiers.HI_XX
                     , Duckling.Ranking.Classifiers.HR_XX
                     , Duckling.Ranking.Classifiers.HU_XX
                     , Duckling.Ranking.Classifiers.ID_XX
                     , Duckling.Ranking.Classifiers.IS_XX
                     , Duckling.Ranking.Classifiers.IT_XX
                     , Duckling.Ranking.Classifiers.JA_XX
                     , Duckling.Ranking.Classifiers.KA_XX
                     , Duckling.Ranking.Classifiers.KM_XX
                     , Duckling.Ranking.Classifiers.KN_XX
                     , Duckling.Ranking.Classifiers.KO_XX
                     , Duckling.Ranking.Classifiers.LO_XX
                     , Duckling.Ranking.Classifiers.ML_XX
                     , Duckling.Ranking.Classifiers.MN_XX
                     , Duckling.Ranking.Classifiers.MY_XX
                     , Duckling.Ranking.Classifiers.NB_XX
                     , Duckling.Ranking.Classifiers.NE_XX
                     , Duckling.Ranking.Classifiers.NL_BE
                     , Duckling.Ranking.Classifiers.NL_NL
                     , Duckling.Ranking.Classifiers.NL_XX
                     , Duckling.Ranking.Classifiers.PL_XX
                     , Duckling.Ranking.Classifiers.PT_XX
                     , Duckling.Ranking.Classifiers.RO_XX
                     , Duckling.Ranking.Classifiers.RU_XX
                     , Duckling.Ranking.Classifiers.SK_XX
                     , Duckling.Ranking.Classifiers.SV_XX
                     , Duckling.Ranking.Classifiers.SW_XX
                     , Duckling.Ranking.Classifiers.TA_XX
                     , Duckling.Ranking.Classifiers.TE_XX
                     , Duckling.Ranking.Classifiers.TH_XX
                     , Duckling.Ranking.Classifiers.TR_XX
                     , Duckling.Ranking.Classifiers.UK_XX
                     , Duckling.Ranking.Classifiers.VI_XX
                     , Duckling.Ranking.Classifiers.ZH_CN
                     , Duckling.Ranking.Classifiers.ZH_HK
                     , Duckling.Ranking.Classifiers.ZH_MO
                     , Duckling.Ranking.Classifiers.ZH_TW
                     , Duckling.Ranking.Classifiers.ZH_XX

  -- ------------------------------------------------------------------
  -- Dimensions
                     , Duckling.Dimensions
                     , Duckling.Dimensions.Common
                     , Duckling.Dimensions.Types
                     , Duckling.Dimensions.AF
                     , Duckling.Dimensions.AR
                     , Duckling.Dimensions.BG
                     , Duckling.Dimensions.BN
                     , Duckling.Dimensions.CA
                     , Duckling.Dimensions.CS
                     , Duckling.Dimensions.DA
                     , Duckling.Dimensions.DE
                     , Duckling.Dimensions.EL
                     , Duckling.Dimensions.EN
                     , Duckling.Dimensions.ES
                     , Duckling.Dimensions.ET
                     , Duckling.Dimensions.FI
                     , Duckling.Dimensions.FA
                     , Duckling.Dimensions.FR
                     , Duckling.Dimensions.GA
                     , Duckling.Dimensions.HE
                     , Duckling.Dimensions.HI
                     , Duckling.Dimensions.HR
                     , Duckling.Dimensions.HU
                     , Duckling.Dimensions.ID
                     , Duckling.Dimensions.IS
                     , Duckling.Dimensions.IT
                     , Duckling.Dimensions.JA
                     , Duckling.Dimensions.KA
                     , Duckling.Dimensions.KM
                     , Duckling.Dimensions.KN
                     , Duckling.Dimensions.KO
                     , Duckling.Dimensions.LO
                     , Duckling.Dimensions.ML
                     , Duckling.Dimensions.MN
                     , Duckling.Dimensions.MY
                     , Duckling.Dimensions.NB
                     , Duckling.Dimensions.NE
                     , Duckling.Dimensions.NL
                     , Duckling.Dimensions.PL
                     , Duckling.Dimensions.PT
                     , Duckling.Dimensions.RO
                     , Duckling.Dimensions.RU
                     , Duckling.Dimensions.SK
                     , Duckling.Dimensions.SV
                     , Duckling.Dimensions.SW
                     , Duckling.Dimensions.TA
                     , Duckling.Dimensions.TE
                     , Duckling.Dimensions.TH
                     , Duckling.Dimensions.TR
                     , Duckling.Dimensions.UK
                     , Duckling.Dimensions.VI
                     , Duckling.Dimensions.ZH

                     -- AmountOfMoney
                     , Duckling.AmountOfMoney.AR.Corpus
                     , Duckling.AmountOfMoney.AR.Rules
                     , Duckling.AmountOfMoney.BG.Corpus
                     , Duckling.AmountOfMoney.BG.Rules
                     , Duckling.AmountOfMoney.EN.AU.Corpus
                     , Duckling.AmountOfMoney.EN.AU.Rules
                     , Duckling.AmountOfMoney.EN.BZ.Corpus
                     , Duckling.AmountOfMoney.EN.BZ.Rules
                     , Duckling.AmountOfMoney.EN.CA.Corpus
                     , Duckling.AmountOfMoney.EN.CA.Rules
                     , Duckling.AmountOfMoney.EN.Corpus
                     , Duckling.AmountOfMoney.EN.GB.Corpus
                     , Duckling.AmountOfMoney.EN.GB.Rules
                     , Duckling.AmountOfMoney.EN.IE.Corpus
                     , Duckling.AmountOfMoney.EN.IE.Rules
                     , Duckling.AmountOfMoney.EN.IN.Corpus
                     , Duckling.AmountOfMoney.EN.IN.Rules
                     , Duckling.AmountOfMoney.EN.JM.Corpus
                     , Duckling.AmountOfMoney.EN.JM.Rules
                     , Duckling.AmountOfMoney.EN.NZ.Corpus
                     , Duckling.AmountOfMoney.EN.NZ.Rules
                     , Duckling.AmountOfMoney.EN.PH.Corpus
                     , Duckling.AmountOfMoney.EN.PH.Rules
                     , Duckling.AmountOfMoney.EN.Rules
                     , Duckling.AmountOfMoney.EN.TT.Corpus
                     , Duckling.AmountOfMoney.EN.TT.Rules
                     , Duckling.AmountOfMoney.EN.US.Corpus
                     , Duckling.AmountOfMoney.EN.US.Rules
                     , Duckling.AmountOfMoney.EN.ZA.Corpus
                     , Duckling.AmountOfMoney.EN.ZA.Rules
                     , Duckling.AmountOfMoney.ES.Corpus
                     , Duckling.AmountOfMoney.ES.Rules
                     , Duckling.AmountOfMoney.FR.Corpus
                     , Duckling.AmountOfMoney.FR.Rules
                     , Duckling.AmountOfMoney.GA.Corpus
                     , Duckling.AmountOfMoney.GA.Rules
                     , Duckling.AmountOfMoney.HE.Corpus
                     , Duckling.AmountOfMoney.HE.Rules
                     , Duckling.AmountOfMoney.HR.Corpus
                     , Duckling.AmountOfMoney.HR.Rules
                     , Duckling.AmountOfMoney.ID.Corpus
                     , Duckling.AmountOfMoney.ID.Rules
                     , Duckling.AmountOfMoney.IT.Rules
                     , Duckling.AmountOfMoney.IT.Corpus
                     , Duckling.AmountOfMoney.KA.Corpus
                     , Duckling.AmountOfMoney.KA.Rules
                     , Duckling.AmountOfMoney.KO.Corpus
                     , Duckling.AmountOfMoney.KO.Rules
                     , Duckling.AmountOfMoney.MN.Corpus
                     , Duckling.AmountOfMoney.MN.Rules
                     , Duckling.AmountOfMoney.NB.Corpus
                     , Duckling.AmountOfMoney.NB.Rules
                     , Duckling.AmountOfMoney.NL.Corpus
                     , Duckling.AmountOfMoney.NL.Rules
                     , Duckling.AmountOfMoney.PT.Corpus
                     , Duckling.AmountOfMoney.PT.Rules
                     , Duckling.AmountOfMoney.RO.Corpus
                     , Duckling.AmountOfMoney.RO.Rules
                     , Duckling.AmountOfMoney.RU.Corpus
                     , Duckling.AmountOfMoney.RU.Rules
                     , Duckling.AmountOfMoney.SV.Corpus
                     , Duckling.AmountOfMoney.SV.Rules
                     , Duckling.AmountOfMoney.TR.Corpus
                     , Duckling.AmountOfMoney.TR.Rules
                     , Duckling.AmountOfMoney.VI.Corpus
                     , Duckling.AmountOfMoney.VI.Rules
                     , Duckling.AmountOfMoney.ZH.Corpus
                     , Duckling.AmountOfMoney.ZH.Rules
                     , Duckling.AmountOfMoney.Helpers
                     , Duckling.AmountOfMoney.Rules
                     , Duckling.AmountOfMoney.Types

                     -- Distance
                     , Duckling.Distance.BG.Corpus
                     , Duckling.Distance.BG.Rules
                     , Duckling.Distance.CS.Corpus
                     , Duckling.Distance.CS.Rules
                     , Duckling.Distance.DE.Corpus
                     , Duckling.Distance.DE.Rules
                     , Duckling.Distance.EN.Corpus
                     , Duckling.Distance.EN.Rules
                     , Duckling.Distance.ES.Corpus
                     , Duckling.Distance.ES.Rules
                     , Duckling.Distance.FR.Corpus
                     , Duckling.Distance.FR.Rules
                     , Duckling.Distance.GA.Corpus
                     , Duckling.Distance.GA.Rules
                     , Duckling.Distance.HR.Corpus
                     , Duckling.Distance.HR.Rules
                     , Duckling.Distance.IT.Corpus
                     , Duckling.Distance.IT.Rules
                     , Duckling.Distance.KM.Corpus
                     , Duckling.Distance.KM.Rules
                     , Duckling.Distance.KO.Corpus
                     , Duckling.Distance.KO.Rules
                     , Duckling.Distance.MN.Corpus
                     , Duckling.Distance.MN.Rules
                     , Duckling.Distance.NL.Corpus
                     , Duckling.Distance.NL.Rules
                     , Duckling.Distance.PT.Corpus
                     , Duckling.Distance.PT.Rules
                     , Duckling.Distance.RO.Corpus
                     , Duckling.Distance.RO.Rules
                     , Duckling.Distance.RU.Corpus
                     , Duckling.Distance.RU.Rules
                     , Duckling.Distance.SV.Corpus
                     , Duckling.Distance.SV.Rules
                     , Duckling.Distance.TR.Corpus
                     , Duckling.Distance.TR.Rules
                     , Duckling.Distance.ZH.Corpus
                     , Duckling.Distance.ZH.Rules
                     , Duckling.Distance.Helpers
                     , Duckling.Distance.Rules
                     , Duckling.Distance.Types
                     , Duckling.DistanceUnits.Types

                     -- Duration
                     , Duckling.Duration.AR.Corpus
                     , Duckling.Duration.AR.Rules
                     , Duckling.Duration.BG.Corpus
                     , Duckling.Duration.BG.Rules
                     , Duckling.Duration.DA.Rules
                     , Duckling.Duration.DE.Rules
                     , Duckling.Duration.EL.Corpus
                     , Duckling.Duration.EL.Rules
                     , Duckling.Duration.EN.Corpus
                     , Duckling.Duration.EN.Rules
                     , Duckling.Duration.ES.Corpus
                     , Duckling.Duration.ES.Rules
                     , Duckling.Duration.FR.Corpus
                     , Duckling.Duration.FR.Rules
                     , Duckling.Duration.GA.Corpus
                     , Duckling.Duration.GA.Rules
                     , Duckling.Duration.HE.Rules
                     , Duckling.Duration.HI.Corpus
                     , Duckling.Duration.HI.Rules
                     , Duckling.Duration.HR.Rules
                     , Duckling.Duration.HU.Corpus
                     , Duckling.Duration.HU.Rules
                     , Duckling.Duration.IT.Rules
                     , Duckling.Duration.JA.Corpus
                     , Duckling.Duration.KA.Corpus
                     , Duckling.Duration.KA.Rules
                     , Duckling.Duration.KO.Corpus
                     , Duckling.Duration.KO.Rules
                     , Duckling.Duration.MN.Corpus
                     , Duckling.Duration.MN.Rules
                     , Duckling.Duration.NB.Corpus
                     , Duckling.Duration.NB.Rules
                     , Duckling.Duration.NL.Corpus
                     , Duckling.Duration.NL.Rules
                     , Duckling.Duration.PL.Corpus
                     , Duckling.Duration.PL.Rules
                     , Duckling.Duration.PT.Corpus
                     , Duckling.Duration.RO.Corpus
                     , Duckling.Duration.RO.Rules
                     , Duckling.Duration.RU.Corpus
                     , Duckling.Duration.RU.Rules
                     , Duckling.Duration.SV.Corpus
                     , Duckling.Duration.SV.Rules
                     , Duckling.Duration.TR.Corpus
                     , Duckling.Duration.TR.Rules
                     , Duckling.Duration.UK.Corpus
                     , Duckling.Duration.UK.Rules
                     , Duckling.Duration.ZH.Corpus
                     , Duckling.Duration.ZH.Rules
                     , Duckling.Duration.Helpers
                     , Duckling.Duration.Rules
                     , Duckling.Duration.Types

                     -- Email
                     , Duckling.Email.DE.Corpus
                     , Duckling.Email.DE.Rules
                     , Duckling.Email.EN.Corpus
                     , Duckling.Email.EN.Rules
                     , Duckling.Email.FR.Corpus
                     , Duckling.Email.FR.Rules
                     , Duckling.Email.IS.Corpus
                     , Duckling.Email.IS.Rules
                     , Duckling.Email.IT.Corpus
                     , Duckling.Email.IT.Rules
                     , Duckling.Email.Corpus
                     , Duckling.Email.Rules
                     , Duckling.Email.Types

                     -- Numeral
                     , Duckling.Numeral.AF.Corpus
                     , Duckling.Numeral.AF.Rules
                     , Duckling.Numeral.AR.Corpus
                     , Duckling.Numeral.AR.Helpers
                     , Duckling.Numeral.AR.Rules
                     , Duckling.Numeral.AR.EG.Corpus
                     , Duckling.Numeral.AR.EG.Helpers
                     , Duckling.Numeral.AR.EG.Rules
                     , Duckling.Numeral.BG.Corpus
                     , Duckling.Numeral.BG.Rules
                     , Duckling.Numeral.BN.Corpus
                     , Duckling.Numeral.BN.Rules
                     , Duckling.Numeral.CA.Corpus
                     , Duckling.Numeral.CA.Rules
                     , Duckling.Numeral.CS.Corpus
                     , Duckling.Numeral.CS.Rules
                     , Duckling.Numeral.DA.Corpus
                     , Duckling.Numeral.DA.Rules
                     , Duckling.Numeral.DE.Corpus
                     , Duckling.Numeral.DE.Rules
                     , Duckling.Numeral.EL.Corpus
                     , Duckling.Numeral.EL.Rules
                     , Duckling.Numeral.EN.Corpus
                     , Duckling.Numeral.EN.Rules
                     , Duckling.Numeral.ES.AR.Corpus
                     , Duckling.Numeral.ES.AR.Rules
                     , Duckling.Numeral.ES.CL.Corpus
                     , Duckling.Numeral.ES.CL.Rules
                     , Duckling.Numeral.ES.Corpus
                     , Duckling.Numeral.ES.CO.Corpus
                     , Duckling.Numeral.ES.CO.Rules
                     , Duckling.Numeral.ES.ES.Corpus
                     , Duckling.Numeral.ES.ES.Rules
                     , Duckling.Numeral.ES.MX.Corpus
                     , Duckling.Numeral.ES.MX.Rules
                     , Duckling.Numeral.ES.PE.Corpus
                     , Duckling.Numeral.ES.PE.Rules
                     , Duckling.Numeral.ES.Rules
                     , Duckling.Numeral.ES.VE.Corpus
                     , Duckling.Numeral.ES.VE.Rules
                     , Duckling.Numeral.ET.Corpus
                     , Duckling.Numeral.ET.Rules
                     , Duckling.Numeral.FI.Corpus
                     , Duckling.Numeral.FI.Rules
                     , Duckling.Numeral.FA.Corpus
                     , Duckling.Numeral.FA.Rules
                     , Duckling.Numeral.FR.Corpus
                     , Duckling.Numeral.FR.Rules
                     , Duckling.Numeral.GA.Corpus
                     , Duckling.Numeral.GA.Rules
                     , Duckling.Numeral.HE.Corpus
                     , Duckling.Numeral.HE.Rules
                     , Duckling.Numeral.HI.Corpus
                     , Duckling.Numeral.HI.Rules
                     , Duckling.Numeral.HR.Corpus
                     , Duckling.Numeral.HR.Rules
                     , Duckling.Numeral.HU.Corpus
                     , Duckling.Numeral.HU.Rules
                     , Duckling.Numeral.ID.Corpus
                     , Duckling.Numeral.ID.Rules
                     , Duckling.Numeral.IS.Corpus
                     , Duckling.Numeral.IS.Rules
                     , Duckling.Numeral.IT.Corpus
                     , Duckling.Numeral.IT.Rules
                     , Duckling.Numeral.JA.Corpus
                     , Duckling.Numeral.JA.Rules
                     , Duckling.Numeral.KA.Corpus
                     , Duckling.Numeral.KA.Rules
                     , Duckling.Numeral.KM.Corpus
                     , Duckling.Numeral.KM.Rules
                     , Duckling.Numeral.KN.Corpus
                     , Duckling.Numeral.KN.Rules
                     , Duckling.Numeral.KO.Corpus
                     , Duckling.Numeral.KO.Rules
                     , Duckling.Numeral.LO.Corpus
                     , Duckling.Numeral.LO.Rules
                     , Duckling.Numeral.ML.Corpus
                     , Duckling.Numeral.ML.Rules
                     , Duckling.Numeral.MN.Corpus
                     , Duckling.Numeral.MN.Rules
                     , Duckling.Numeral.MY.Corpus
                     , Duckling.Numeral.MY.Rules
                     , Duckling.Numeral.NB.Corpus
                     , Duckling.Numeral.NB.Rules
                     , Duckling.Numeral.NE.Corpus
                     , Duckling.Numeral.NE.Rules
                     , Duckling.Numeral.NL.Corpus
                     , Duckling.Numeral.NL.Rules
                     , Duckling.Numeral.PL.Corpus
                     , Duckling.Numeral.PL.Rules
                     , Duckling.Numeral.PT.Corpus
                     , Duckling.Numeral.PT.Rules
                     , Duckling.Numeral.RO.Corpus
                     , Duckling.Numeral.RO.Rules
                     , Duckling.Numeral.RU.Corpus
                     , Duckling.Numeral.RU.Rules
                     , Duckling.Numeral.SK.Corpus
                     , Duckling.Numeral.SK.Rules
                     , Duckling.Numeral.SV.Corpus
                     , Duckling.Numeral.SV.Rules
                     , Duckling.Numeral.SW.Corpus
                     , Duckling.Numeral.SW.Rules
                     , Duckling.Numeral.TA.Corpus
                     , Duckling.Numeral.TA.Rules
                     , Duckling.Numeral.TE.Corpus
                     , Duckling.Numeral.TE.Rules
                     , Duckling.Numeral.TH.Corpus
                     , Duckling.Numeral.TH.Rules
                     , Duckling.Numeral.TR.Corpus
                     , Duckling.Numeral.TR.Rules
                     , Duckling.Numeral.UK.Corpus
                     , Duckling.Numeral.UK.Rules
                     , Duckling.Numeral.VI.Corpus
                     , Duckling.Numeral.VI.Rules
                     , Duckling.Numeral.ZH.Corpus
                     , Duckling.Numeral.ZH.Rules
                     , Duckling.Numeral.Helpers
                     , Duckling.Numeral.Rules
                     , Duckling.Numeral.Types

                     -- Ordinal
                     , Duckling.Ordinal.AR.Corpus
                     , Duckling.Ordinal.AR.Rules
                     , Duckling.Ordinal.BG.Corpus
                     , Duckling.Ordinal.BG.Rules
                     , Duckling.Ordinal.CA.Corpus
                     , Duckling.Ordinal.CA.Rules
                     , Duckling.Ordinal.DA.Corpus
                     , Duckling.Ordinal.DA.Rules
                     , Duckling.Ordinal.DE.Corpus
                     , Duckling.Ordinal.DE.Rules
                     , Duckling.Ordinal.EL.Corpus
                     , Duckling.Ordinal.EL.Rules
                     , Duckling.Ordinal.EN.Corpus
                     , Duckling.Ordinal.EN.Rules
                     , Duckling.Ordinal.ES.Corpus
                     , Duckling.Ordinal.ES.Rules
                     , Duckling.Ordinal.ET.Corpus
                     , Duckling.Ordinal.ET.Rules
                     , Duckling.Ordinal.FR.Corpus
                     , Duckling.Ordinal.FR.Rules
                     , Duckling.Ordinal.GA.Corpus
                     , Duckling.Ordinal.GA.Rules
                     , Duckling.Ordinal.HE.Corpus
                     , Duckling.Ordinal.HE.Rules
                     , Duckling.Ordinal.HI.Corpus
                     , Duckling.Ordinal.HI.Rules
                     , Duckling.Ordinal.HR.Corpus
                     , Duckling.Ordinal.HR.Rules
                     , Duckling.Ordinal.HU.Corpus
                     , Duckling.Ordinal.HU.Rules
                     , Duckling.Ordinal.ID.Corpus
                     , Duckling.Ordinal.ID.Rules
                     , Duckling.Ordinal.IT.Corpus
                     , Duckling.Ordinal.IT.Rules
                     , Duckling.Ordinal.JA.Corpus
                     , Duckling.Ordinal.JA.Rules
                     , Duckling.Ordinal.KA.Corpus
                     , Duckling.Ordinal.KA.Rules
                     , Duckling.Ordinal.KM.Corpus
                     , Duckling.Ordinal.KM.Rules
                     , Duckling.Ordinal.KO.Corpus
                     , Duckling.Ordinal.KO.Rules
                     , Duckling.Ordinal.ML.Corpus
                     , Duckling.Ordinal.ML.Rules
                     , Duckling.Ordinal.MN.Corpus
                     , Duckling.Ordinal.MN.Rules
                     , Duckling.Ordinal.NB.Corpus
                     , Duckling.Ordinal.NB.Rules
                     , Duckling.Ordinal.NL.Corpus
                     , Duckling.Ordinal.NL.Rules
                     , Duckling.Ordinal.PL.Corpus
                     , Duckling.Ordinal.PL.Rules
                     , Duckling.Ordinal.PT.Corpus
                     , Duckling.Ordinal.PT.Rules
                     , Duckling.Ordinal.RO.Corpus
                     , Duckling.Ordinal.RO.Rules
                     , Duckling.Ordinal.RU.Corpus
                     , Duckling.Ordinal.RU.Rules
                     , Duckling.Ordinal.SV.Corpus
                     , Duckling.Ordinal.SV.Rules
                     , Duckling.Ordinal.TA.Corpus
                     , Duckling.Ordinal.TA.Rules
                     , Duckling.Ordinal.TR.Corpus
                     , Duckling.Ordinal.TR.Rules
                     , Duckling.Ordinal.UK.Corpus
                     , Duckling.Ordinal.UK.Rules
                     , Duckling.Ordinal.VI.Corpus
                     , Duckling.Ordinal.VI.Rules
                     , Duckling.Ordinal.ZH.Corpus
                     , Duckling.Ordinal.ZH.Rules
                     , Duckling.Ordinal.Helpers
                     , Duckling.Ordinal.Types

                     -- PhoneNumber
                     , Duckling.PhoneNumber.AR.Corpus
                     , Duckling.PhoneNumber.AR.Rules
                     , Duckling.PhoneNumber.PT.Corpus
                     , Duckling.PhoneNumber.PT.Rules
                     , Duckling.PhoneNumber.Corpus
                     , Duckling.PhoneNumber.Rules
                     , Duckling.PhoneNumber.Types

                     -- Quantity
                     , Duckling.Quantity.AR.Corpus
                     , Duckling.Quantity.AR.Rules
                     , Duckling.Quantity.EN.Corpus
                     , Duckling.Quantity.EN.Rules
                     , Duckling.Quantity.ES.Corpus
                     , Duckling.Quantity.ES.Rules
                     , Duckling.Quantity.FR.Corpus
                     , Duckling.Quantity.FR.Rules
                     , Duckling.Quantity.HR.Corpus
                     , Duckling.Quantity.HR.Rules
                     , Duckling.Quantity.KM.Corpus
                     , Duckling.Quantity.KM.Rules
                     , Duckling.Quantity.KO.Corpus
                     , Duckling.Quantity.KO.Rules
                     , Duckling.Quantity.MN.Corpus
                     , Duckling.Quantity.MN.Rules
                     , Duckling.Quantity.NL.Corpus
                     , Duckling.Quantity.NL.Rules
                     , Duckling.Quantity.PT.Corpus
                     , Duckling.Quantity.PT.Rules
                     , Duckling.Quantity.RO.Corpus
                     , Duckling.Quantity.RO.Rules
                     , Duckling.Quantity.RU.Corpus
                     , Duckling.Quantity.RU.Rules
                     , Duckling.Quantity.ZH.Corpus
                     , Duckling.Quantity.ZH.Rules
                     , Duckling.Quantity.Helpers
                     , Duckling.Quantity.Types

                     -- Regex
                     , Duckling.Regex.Types

                     -- Temperature
                     , Duckling.Temperature.AR.Corpus
                     , Duckling.Temperature.AR.Rules
                     , Duckling.Temperature.EN.Corpus
                     , Duckling.Temperature.EN.Rules
                     , Duckling.Temperature.ES.Corpus
                     , Duckling.Temperature.ES.Rules
                     , Duckling.Temperature.FR.Corpus
                     , Duckling.Temperature.FR.Rules
                     , Duckling.Temperature.GA.Corpus
                     , Duckling.Temperature.GA.Rules
                     , Duckling.Temperature.HI.Corpus
                     , Duckling.Temperature.HI.Rules
                     , Duckling.Temperature.HR.Corpus
                     , Duckling.Temperature.HR.Rules
                     , Duckling.Temperature.IT.Corpus
                     , Duckling.Temperature.IT.Rules
                     , Duckling.Temperature.JA.Corpus
                     , Duckling.Temperature.JA.Rules
                     , Duckling.Temperature.KM.Corpus
                     , Duckling.Temperature.KM.Rules
                     , Duckling.Temperature.KO.Corpus
                     , Duckling.Temperature.KO.Rules
                     , Duckling.Temperature.MN.Rules
                     , Duckling.Temperature.MN.Corpus
                     , Duckling.Temperature.PT.Corpus
                     , Duckling.Temperature.PT.Rules
                     , Duckling.Temperature.RO.Corpus
                     , Duckling.Temperature.RO.Rules
                     , Duckling.Temperature.TR.Corpus
                     , Duckling.Temperature.TR.Rules
                     , Duckling.Temperature.ZH.Corpus
                     , Duckling.Temperature.ZH.Rules
                     , Duckling.Temperature.Helpers
                     , Duckling.Temperature.Rules
                     , Duckling.Temperature.Types

                     -- Time
                     , Duckling.Time.AR.Corpus
                     , Duckling.Time.AR.Rules
                     , Duckling.Time.BG.Corpus
                     , Duckling.Time.BG.Rules
                     , Duckling.Time.DA.Corpus
                     , Duckling.Time.DA.Rules
                     , Duckling.Time.DE.Corpus
                     , Duckling.Time.DE.Rules
                     , Duckling.Time.EL.Corpus
                     , Duckling.Time.EL.Rules
                     , Duckling.Time.EN.Corpus
                     , Duckling.Time.EN.Rules
                     , Duckling.Time.EN.AU.Corpus
                     , Duckling.Time.EN.AU.Rules
                     , Duckling.Time.EN.BZ.Corpus
                     , Duckling.Time.EN.BZ.Rules
                     , Duckling.Time.EN.CA.Corpus
                     , Duckling.Time.EN.CA.Rules
                     , Duckling.Time.EN.GB.Corpus
                     , Duckling.Time.EN.GB.Rules
                     , Duckling.Time.EN.IE.Corpus
                     , Duckling.Time.EN.IE.Rules
                     , Duckling.Time.EN.IN.Corpus
                     , Duckling.Time.EN.IN.Rules
                     , Duckling.Time.EN.JM.Corpus
                     , Duckling.Time.EN.JM.Rules
                     , Duckling.Time.EN.NZ.Corpus
                     , Duckling.Time.EN.NZ.Rules
                     , Duckling.Time.EN.PH.Corpus
                     , Duckling.Time.EN.PH.Rules
                     , Duckling.Time.EN.TT.Corpus
                     , Duckling.Time.EN.TT.Rules
                     , Duckling.Time.EN.US.Corpus
                     , Duckling.Time.EN.US.Rules
                     , Duckling.Time.EN.ZA.Corpus
                     , Duckling.Time.EN.ZA.Rules
                     , Duckling.Time.ES.Corpus
                     , Duckling.Time.ES.Rules
                     , Duckling.Time.FR.Corpus
                     , Duckling.Time.FR.Rules
                     , Duckling.Time.GA.Corpus
                     , Duckling.Time.GA.Rules
                     , Duckling.Time.HR.Corpus
                     , Duckling.Time.HR.Rules
                     , Duckling.Time.HE.Corpus
                     , Duckling.Time.HE.Rules
                     , Duckling.Time.HU.Corpus
                     , Duckling.Time.HU.Rules
                     , Duckling.Time.IT.Corpus
                     , Duckling.Time.IT.Rules
                     , Duckling.Time.KA.Corpus
                     , Duckling.Time.KA.Rules
                     , Duckling.Time.KO.Corpus
                     , Duckling.Time.KO.Rules
                     , Duckling.Time.NB.Corpus
                     , Duckling.Time.NB.Rules
                     , Duckling.Time.NL.Corpus
                     , Duckling.Time.NL.Rules
                     , Duckling.Time.NL.BE.Corpus
                     , Duckling.Time.NL.BE.Rules
                     , Duckling.Time.NL.NL.Rules
                     , Duckling.Time.PL.Corpus
                     , Duckling.Time.PL.Rules
                     , Duckling.Time.PT.Corpus
                     , Duckling.Time.PT.Rules
                     , Duckling.Time.RO.Corpus
                     , Duckling.Time.RO.Rules
                     , Duckling.Time.RU.Corpus
                     , Duckling.Time.RU.Rules
                     , Duckling.Time.SV.Corpus
                     , Duckling.Time.SV.Rules
                     , Duckling.Time.TR.Corpus
                     , Duckling.Time.TR.Rules
                     , Duckling.Time.UK.Corpus
                     , Duckling.Time.UK.Rules
                     , Duckling.Time.VI.Corpus
                     , Duckling.Time.VI.Rules
                     , Duckling.Time.ZH.Corpus
                     , Duckling.Time.ZH.Rules
                     , Duckling.Time.ZH.CN.Corpus
                     , Duckling.Time.ZH.CN.Rules
                     , Duckling.Time.ZH.HK.Corpus
                     , Duckling.Time.ZH.HK.Rules
                     , Duckling.Time.ZH.MO.Corpus
                     , Duckling.Time.ZH.MO.Rules
                     , Duckling.Time.ZH.TW.Corpus
                     , Duckling.Time.ZH.TW.Rules
                     , Duckling.Time.Computed
                     , Duckling.Time.Corpus
                     , Duckling.Time.Helpers
                     , Duckling.Time.HolidayHelpers
                     , Duckling.Time.Types
                     -- REMOVE ME
                     , Duckling.Time.TimeZone.Parse

                     -- TimeGrain
                     , Duckling.TimeGrain.AR.Rules
                     , Duckling.TimeGrain.BG.Rules
                     , Duckling.TimeGrain.DA.Rules
                     , Duckling.TimeGrain.DE.Rules
                     , Duckling.TimeGrain.EN.Rules
                     , Duckling.TimeGrain.EL.Rules
                     , Duckling.TimeGrain.ES.Rules
                     , Duckling.TimeGrain.FI.Rules
                     , Duckling.TimeGrain.FR.Rules
                     , Duckling.TimeGrain.GA.Rules
                     , Duckling.TimeGrain.HE.Rules
                     , Duckling.TimeGrain.HI.Rules
                     , Duckling.TimeGrain.HR.Rules
                     , Duckling.TimeGrain.HU.Rules
                     , Duckling.TimeGrain.IT.Rules
                     , Duckling.TimeGrain.JA.Rules
                     , Duckling.TimeGrain.KA.Rules
                     , Duckling.TimeGrain.KO.Rules
                     , Duckling.TimeGrain.MN.Rules
                     , Duckling.TimeGrain.NB.Rules
                     , Duckling.TimeGrain.NL.Rules
                     , Duckling.TimeGrain.PL.Rules
                     , Duckling.TimeGrain.PT.Rules
                     , Duckling.TimeGrain.RO.Rules
                     , Duckling.TimeGrain.RU.Rules
                     , Duckling.TimeGrain.SV.Rules
                     , Duckling.TimeGrain.TR.Rules
                     , Duckling.TimeGrain.UK.Rules
                     , Duckling.TimeGrain.VI.Rules
                     , Duckling.TimeGrain.ZH.Rules
                     , Duckling.TimeGrain.Types

                     -- Url
                     , Duckling.Url.Corpus
                     , Duckling.Url.Helpers
                     , Duckling.Url.Rules
                     , Duckling.Url.Types

                     -- Volume
                     , Duckling.Volume.AR.Corpus
                     , Duckling.Volume.AR.Rules
                     , Duckling.Volume.DE.Corpus
                     , Duckling.Volume.DE.Rules
                     , Duckling.Volume.EN.Corpus
                     , Duckling.Volume.EN.Rules
                     , Duckling.Volume.ES.Corpus
                     , Duckling.Volume.ES.Rules
                     , Duckling.Volume.FR.Corpus
                     , Duckling.Volume.FR.Rules
                     , Duckling.Volume.GA.Corpus
                     , Duckling.Volume.GA.Rules
                     , Duckling.Volume.HR.Corpus
                     , Duckling.Volume.HR.Rules
                     , Duckling.Volume.IT.Corpus
                     , Duckling.Volume.IT.Rules
                     , Duckling.Volume.KM.Corpus
                     , Duckling.Volume.KM.Rules
                     , Duckling.Volume.KO.Corpus
                     , Duckling.Volume.KO.Rules
                     , Duckling.Volume.PT.Corpus
                     , Duckling.Volume.PT.Rules
                     , Duckling.Volume.MN.Corpus
                     , Duckling.Volume.MN.Rules
                     , Duckling.Volume.NL.Corpus
                     , Duckling.Volume.NL.Rules
                     , Duckling.Volume.RO.Corpus
                     , Duckling.Volume.RO.Rules
                     , Duckling.Volume.RU.Corpus
                     , Duckling.Volume.RU.Rules
                     , Duckling.Volume.TR.Corpus
                     , Duckling.Volume.TR.Rules
                     , Duckling.Volume.ZH.Corpus
                     , Duckling.Volume.ZH.Rules
                     , Duckling.Volume.Helpers
                     , Duckling.Volume.Rules
                     , Duckling.Volume.Types

                     -- CreditCardNumber
                     , Duckling.CreditCardNumber.Corpus
                     , Duckling.CreditCardNumber.Helpers
                     , Duckling.CreditCardNumber.Rules
                     , Duckling.CreditCardNumber.Types
  build-depends:     , base                  >= 4.8.2 && < 5.0
                     , array                 >= 0.5.1.1 && < 0.6
                     , attoparsec            >= 0.13.1.0 && < 0.15
                     , aeson                 >= 0.11.3.0 && < 1.6
                     , bytestring            >= 0.10.6.0 && < 0.12
                     , containers            >= 0.5.6.2 && < 0.7
                     , deepseq               >= 1.4.1.1 && < 1.5
                     , dependent-sum         >= 0.3.2.2 && < 0.8
                     , extra                 >= 1.4.10 && < 1.8
                     , hashable              >= 1.2.4.0 && < 1.4
                     , regex-base            >= 0.93.2 && < 0.95
                     , text                  >= 1.2.2.1 && < 1.3
                     , text-show             >= 2.1.2 && < 3.10
                     , time                  >= 1.5.0.1 && < 2
                     , timezone-series       >= 0.1.5.1 && < 0.2
                     , unordered-containers  >= 0.2.7.2 && < 0.3
  if os(windows)
    build-depends: , regex-pcre-builtin      >= 0.94.4 && < 0.96
  else
    build-depends: , regex-pcre              >= 0.94.4 && < 0.96

  default-language:    Haskell2010
  default-extensions:  OverloadedStrings

test-suite duckling-test
  type:                exitcode-stdio-1.0
  main-is:             TestMain.hs
  hs-source-dirs:      tests
  build-depends:       duckling
                     , base
                     , aeson
                     , text
                     , time
                     , unordered-containers
                     , tasty                 >= 0.11.1 && < 1.3
                     , tasty-hunit           >= 0.9.2 && < 1.0
  other-modules:       Duckling.Tests
                     , Duckling.Testing.Asserts

                     , Duckling.Api.Tests
                     , Duckling.Engine.Tests

  -- ------------------------------------------------------------------
  -- Dimensions
                     , Duckling.Dimensions.Tests

                     -- AmountOfMoney
                     , Duckling.AmountOfMoney.AR.Tests
                     , Duckling.AmountOfMoney.EN.Tests
                     , Duckling.AmountOfMoney.BG.Tests
                     , Duckling.AmountOfMoney.ES.Tests
                     , Duckling.AmountOfMoney.FR.Tests
                     , Duckling.AmountOfMoney.GA.Tests
                     , Duckling.AmountOfMoney.HE.Tests
                     , Duckling.AmountOfMoney.HR.Tests
                     , Duckling.AmountOfMoney.ID.Tests
                     , Duckling.AmountOfMoney.IT.Tests
                     , Duckling.AmountOfMoney.KA.Tests
                     , Duckling.AmountOfMoney.KO.Tests
                     , Duckling.AmountOfMoney.MN.Tests
                     , Duckling.AmountOfMoney.NB.Tests
                     , Duckling.AmountOfMoney.PT.Tests
                     , Duckling.AmountOfMoney.RO.Tests
                     , Duckling.AmountOfMoney.RU.Tests
                     , Duckling.AmountOfMoney.SV.Tests
                     , Duckling.AmountOfMoney.TR.Tests
                     , Duckling.AmountOfMoney.VI.Tests
                     , Duckling.AmountOfMoney.NL.Tests
                     , Duckling.AmountOfMoney.ZH.Tests
                     , Duckling.AmountOfMoney.Tests

                     -- Distance
                     , Duckling.Distance.BG.Tests
                     , Duckling.Distance.CS.Tests
                     , Duckling.Distance.DE.Tests
                     , Duckling.Distance.EN.Tests
                     , Duckling.Distance.ES.Tests
                     , Duckling.Distance.FR.Tests
                     , Duckling.Distance.GA.Tests
                     , Duckling.Distance.HR.Tests
                     , Duckling.Distance.IT.Tests
                     , Duckling.Distance.KM.Tests
                     , Duckling.Distance.KO.Tests
                     , Duckling.Distance.MN.Tests
                     , Duckling.Distance.NL.Tests
                     , Duckling.Distance.PT.Tests
                     , Duckling.Distance.RO.Tests
                     , Duckling.Distance.RU.Tests
                     , Duckling.Distance.TR.Tests
                     , Duckling.Distance.SV.Tests
                     , Duckling.Distance.ZH.Tests
                     , Duckling.Distance.Tests

                     -- Duration
                     , Duckling.Duration.AR.Tests
                     , Duckling.Duration.BG.Tests
                     , Duckling.Duration.EL.Tests
                     , Duckling.Duration.EN.Tests
                     , Duckling.Duration.ES.Tests
                     , Duckling.Duration.FR.Tests
                     , Duckling.Duration.GA.Tests
                     , Duckling.Duration.HU.Tests
                     , Duckling.Duration.HI.Tests
                     , Duckling.Duration.JA.Tests
                     , Duckling.Duration.KA.Tests
                     , Duckling.Duration.KO.Tests
                     , Duckling.Duration.MN.Tests
                     , Duckling.Duration.NB.Tests
                     , Duckling.Duration.NL.Tests
                     , Duckling.Duration.PL.Tests
                     , Duckling.Duration.PT.Tests
                     , Duckling.Duration.RO.Tests
                     , Duckling.Duration.RU.Tests
                     , Duckling.Duration.SV.Tests
                     , Duckling.Duration.TR.Tests
                     , Duckling.Duration.UK.Tests
                     , Duckling.Duration.ZH.Tests
                     , Duckling.Duration.Tests

                     -- Email
                     , Duckling.Email.EN.Tests
                     , Duckling.Email.DE.Tests
                     , Duckling.Email.IS.Tests
                     , Duckling.Email.FR.Tests
                     , Duckling.Email.IT.Tests
                     , Duckling.Email.Tests

                     -- Numeral
                     , Duckling.Numeral.AF.Tests
                     , Duckling.Numeral.AR.Tests
                     , Duckling.Numeral.BG.Tests
                     , Duckling.Numeral.BN.Tests
                     , Duckling.Numeral.CA.Tests
                     , Duckling.Numeral.CS.Tests
                     , Duckling.Numeral.DA.Tests
                     , Duckling.Numeral.DE.Tests
                     , Duckling.Numeral.EL.Tests
                     , Duckling.Numeral.EN.Tests
                     , Duckling.Numeral.ES.Tests
                     , Duckling.Numeral.ET.Tests
                     , Duckling.Numeral.FI.Tests
                     , Duckling.Numeral.FA.Tests
                     , Duckling.Numeral.FR.Tests
                     , Duckling.Numeral.GA.Tests
                     , Duckling.Numeral.HE.Tests
                     , Duckling.Numeral.HI.Tests
                     , Duckling.Numeral.HR.Tests
                     , Duckling.Numeral.HU.Tests
                     , Duckling.Numeral.ID.Tests
                     , Duckling.Numeral.IS.Tests
                     , Duckling.Numeral.IT.Tests
                     , Duckling.Numeral.JA.Tests
                     , Duckling.Numeral.KA.Tests
                     , Duckling.Numeral.KM.Tests
                     , Duckling.Numeral.KN.Tests
                     , Duckling.Numeral.KO.Tests
                     , Duckling.Numeral.LO.Tests
                     , Duckling.Numeral.ML.Tests
                     , Duckling.Numeral.MN.Tests
                     , Duckling.Numeral.MY.Tests
                     , Duckling.Numeral.NB.Tests
                     , Duckling.Numeral.NE.Tests
                     , Duckling.Numeral.NL.Tests
                     , Duckling.Numeral.PL.Tests
                     , Duckling.Numeral.PT.Tests
                     , Duckling.Numeral.RO.Tests
                     , Duckling.Numeral.RU.Tests
                     , Duckling.Numeral.SK.Tests
                     , Duckling.Numeral.SV.Tests
                     , Duckling.Numeral.SW.Tests
                     , Duckling.Numeral.TA.Tests
                     , Duckling.Numeral.TE.Tests
                     , Duckling.Numeral.TH.Tests
                     , Duckling.Numeral.TR.Tests
                     , Duckling.Numeral.UK.Tests
                     , Duckling.Numeral.VI.Tests
                     , Duckling.Numeral.ZH.Tests
                     , Duckling.Numeral.Tests

                     -- Ordinal
                     , Duckling.Ordinal.AR.Tests
                     , Duckling.Ordinal.BG.Tests
                     , Duckling.Ordinal.CA.Tests
                     , Duckling.Ordinal.DA.Tests
                     , Duckling.Ordinal.DE.Tests
                     , Duckling.Ordinal.EL.Tests
                     , Duckling.Ordinal.EN.Tests
                     , Duckling.Ordinal.ES.Tests
                     , Duckling.Ordinal.ET.Tests
                     , Duckling.Ordinal.FR.Tests
                     , Duckling.Ordinal.GA.Tests
                     , Duckling.Ordinal.HE.Tests
                     , Duckling.Ordinal.HI.Tests
                     , Duckling.Ordinal.HR.Tests
                     , Duckling.Ordinal.HU.Tests
                     , Duckling.Ordinal.ID.Tests
                     , Duckling.Ordinal.IT.Tests
                     , Duckling.Ordinal.JA.Tests
                     , Duckling.Ordinal.KA.Tests
                     , Duckling.Ordinal.KM.Tests
                     , Duckling.Ordinal.KO.Tests
                     , Duckling.Ordinal.MN.Tests
                     , Duckling.Ordinal.ML.Tests
                     , Duckling.Ordinal.NB.Tests
                     , Duckling.Ordinal.NL.Tests
                     , Duckling.Ordinal.PL.Tests
                     , Duckling.Ordinal.PT.Tests
                     , Duckling.Ordinal.RO.Tests
                     , Duckling.Ordinal.RU.Tests
                     , Duckling.Ordinal.SV.Tests
                     , Duckling.Ordinal.TA.Tests
                     , Duckling.Ordinal.TR.Tests
                     , Duckling.Ordinal.UK.Tests
                     , Duckling.Ordinal.VI.Tests
                     , Duckling.Ordinal.ZH.Tests
                     , Duckling.Ordinal.Tests

                     -- PhoneNumber
                     , Duckling.PhoneNumber.AR.Tests
                     , Duckling.PhoneNumber.PT.Tests
                     , Duckling.PhoneNumber.Tests

                     -- Quantity
                     , Duckling.Quantity.AR.Tests
                     , Duckling.Quantity.EN.Tests
                     , Duckling.Quantity.ES.Tests
                     , Duckling.Quantity.FR.Tests
                     , Duckling.Quantity.HR.Tests
                     , Duckling.Quantity.KM.Tests
                     , Duckling.Quantity.KO.Tests
                     , Duckling.Quantity.MN.Tests
                     , Duckling.Quantity.NL.Tests
                     , Duckling.Quantity.PT.Tests
                     , Duckling.Quantity.RO.Tests
                     , Duckling.Quantity.RU.Tests
                     , Duckling.Quantity.ZH.Tests
                     , Duckling.Quantity.Tests

                     -- Temperature
                     , Duckling.Temperature.AR.Tests
                     , Duckling.Temperature.EN.Tests
                     , Duckling.Temperature.ES.Tests
                     , Duckling.Temperature.FR.Tests
                     , Duckling.Temperature.GA.Tests
                     , Duckling.Temperature.HI.Tests
                     , Duckling.Temperature.HR.Tests
                     , Duckling.Temperature.IT.Tests
                     , Duckling.Temperature.JA.Tests
                     , Duckling.Temperature.MN.Tests
                     , Duckling.Temperature.KM.Tests
                     , Duckling.Temperature.KO.Tests
                     , Duckling.Temperature.PT.Tests
                     , Duckling.Temperature.RO.Tests
                     , Duckling.Temperature.TR.Tests
                     , Duckling.Temperature.ZH.Tests
                     , Duckling.Temperature.Tests

                     -- Time
                     , Duckling.Time.AR.Tests
                     , Duckling.Time.BG.Tests
                     , Duckling.Time.DA.Tests
                     , Duckling.Time.DE.Tests
                     , Duckling.Time.EL.Tests
                     , Duckling.Time.EN.Tests
                     , Duckling.Time.ES.Tests
                     , Duckling.Time.FR.Tests
                     , Duckling.Time.GA.Tests
                     , Duckling.Time.HR.Tests
                     , Duckling.Time.HE.Tests
                     , Duckling.Time.HU.Tests
                     , Duckling.Time.IT.Tests
                     , Duckling.Time.KA.Tests
                     , Duckling.Time.KO.Tests
                     , Duckling.Time.NB.Tests
                     , Duckling.Time.NL.Tests
                     , Duckling.Time.PL.Tests
                     , Duckling.Time.PT.Tests
                     , Duckling.Time.RO.Tests
                     , Duckling.Time.RU.Tests
                     , Duckling.Time.SV.Tests
                     , Duckling.Time.UK.Tests
                     , Duckling.Time.VI.Tests
                     , Duckling.Time.ZH.Tests
                     , Duckling.Time.Tests

                     -- Url
                     , Duckling.Url.Tests

                     -- Volume
                     , Duckling.Volume.AR.Tests
                     , Duckling.Volume.DE.Tests
                     , Duckling.Volume.EN.Tests
                     , Duckling.Volume.ES.Tests
                     , Duckling.Volume.FR.Tests
                     , Duckling.Volume.GA.Tests
                     , Duckling.Volume.HR.Tests
                     , Duckling.Volume.IT.Tests
                     , Duckling.Volume.KM.Tests
                     , Duckling.Volume.KO.Tests
                     , Duckling.Volume.PT.Tests
                     , Duckling.Volume.MN.Tests
                     , Duckling.Volume.NL.Tests
                     , Duckling.Volume.RO.Tests
                     , Duckling.Volume.RU.Tests
                     , Duckling.Volume.TR.Tests
                     , Duckling.Volume.ZH.Tests
                     , Duckling.Volume.Tests

                     -- CreditCardNumber
                     , Duckling.CreditCardNumber.Tests

  ghc-options:         -threaded -rtsopts -with-rtsopts=-N -Wincomplete-patterns
  default-language:    Haskell2010
  default-extensions:  OverloadedStrings

executable duckling-regen-exe
  main-is:             RegenMain.hs
  hs-source-dirs:      exe
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N -Wincomplete-patterns
  other-modules:       Duckling.Ranking.Train
                     , Duckling.Ranking.Generate
  build-depends:       duckling
                     , base
                     , haskell-src-exts      >= 1.18 && < 1.30
                     , text
                     , unordered-containers
  default-language:    Haskell2010
  default-extensions:  OverloadedStrings

executable duckling-example-exe
  main-is:             ExampleMain.hs
  hs-source-dirs:      exe
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N
  other-modules:       Duckling.Data.TimeZone
  build-depends:       duckling
                     , base
                     , aeson
                     , bytestring
                     , directory             >= 1.2.2.0 && < 1.4
                     , extra
                     , filepath              >= 1.4.0.0 && < 1.5
                     , snap-core             >= 1.0.2.0 && < 1.1
                     , snap-server           >= 1.0.1.1 && < 1.2
                     , text
                     , text-show
                     , time
                     , timezone-olson        >= 0.1.7 && < 0.3
                     , timezone-series
                     , unordered-containers
  default-language:    Haskell2010
  default-extensions:  OverloadedStrings

executable custom-dimension-example
  main-is:             CustomDimensionExample.hs
  hs-source-dirs:      exe
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N
  build-depends:       duckling
                     , aeson
                     , base
                     , deepseq
                     , dependent-sum
                     , hashable
                     , text
                     , text-show
                     , unordered-containers
  default-language:    Haskell2010
  default-extensions:  OverloadedStrings

executable duckling-request-sample
  main-is:             DucklingRequestSample.hs
  hs-source-dirs:      exe
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N
  other-modules:       Duckling.Data.TimeZone
  build-depends:       duckling
                     , base
                     , dependent-sum
                     , directory             >= 1.2.2.0 && < 1.4
                     , extra
                     , filepath              >= 1.4.0.0 && < 1.5
                     , text
                     , time
                     , timezone-olson        >= 0.1.7 && < 0.3
                     , timezone-series
                     , unordered-containers
  default-language:    Haskell2010
  default-extensions:  OverloadedStrings

executable duckling-expensive
  main-is:             DucklingExpensive.hs
  hs-source-dirs:      exe
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N
  other-modules:       Duckling.Data.TimeZone
  build-depends:       duckling
                     , base
                     , dependent-sum
                     , directory             >= 1.2.2.0 && < 1.4
                     , extra
                     , filepath              >= 1.4.0.0 && < 1.5
                     , text
                     , time
                     , timezone-olson        >= 0.1.7 && < 0.3
                     , timezone-series
                     , unordered-containers
  default-language:    Haskell2010
  default-extensions:  OverloadedStrings

source-repository head
  type:     git
  location: https://github.com/facebook/duckling