-- 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.


{-# LANGUAGE OverloadedStrings #-}

module Duckling.Numeral.RU.Corpus
  ( corpus ) where

import Prelude
import Data.String

import Duckling.Locale
import Duckling.Numeral.Types
import Duckling.Resolve
import Duckling.Testing.Types

corpus :: Corpus
corpus :: Corpus
corpus = (Context
testContext {locale :: Locale
locale = Lang -> Maybe Region -> Locale
makeLocale Lang
RU Maybe Region
forall a. Maybe a
Nothing}, Options
testOptions, [Example]
allExamples)

allExamples :: [Example]
allExamples :: [Example]
allExamples = [[Example]] -> [Example]
forall (t :: * -> *) a. Foldable t => t [a] -> [a]
concat
  [ NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
0)
             [ Text
"0"
             , Text
"ноль"
             , Text
"нисколько"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
1)
             [ Text
"1"
             , Text
"один"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
2)
             [ Text
"2"
             , Text
"02"
             , Text
"два"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
3)
             [ Text
"3"
             , Text
"три"
             , Text
"03"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
4)
             [ Text
"4"
             , Text
"четыре"
             , Text
"04"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
5)
             [ Text
"пять"
             , Text
"5"
             , Text
"05"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
33)
             [ Text
"33"
             , Text
"тридцать три"
             , Text
"тридцати три"
             , Text
"0033"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
11)
             [ Text
"11"
             , Text
"одиннадцать"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
14)
             [ Text
"14"
             , Text
"четырнадцать"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
16)
             [ Text
"16"
             , Text
"шестнадцать"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
17)
             [ Text
"17"
             , Text
"семнадцать"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
18)
             [ Text
"18"
             , Text
"восемнадцать"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
312)
             [ Text
"триста двенадцать"
             , Text
"312"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
444)
             [ Text
"четыреста сорок четыре"
             , Text
"четыреста сорока четыре"
             , Text
"444"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
525)
             [ Text
"пятьсот двадцать пять"
             , Text
"пятьсот двадцати пять"
             , Text
"525"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
555)
             [ Text
"пятьсот пятьдесят пять"
             , Text
"пятьсот пятидесяти пять"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
565)
             [ Text
"пятьсот шестьдесят пять"
             , Text
"пятьсот шестидесяти пять"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
575)
             [ Text
"пятьсот семьдесят пять"
             , Text
"пятьсот семидесяти пять"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
585)
             [ Text
"пятьсот восемьдесят пять"
             , Text
"пятьсот восьмидесяти пять"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
595)
             [ Text
"пятьсот девяносто пять"
             , Text
"пятьсот девяноста пять"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
1.5)
             [ Text
"1.5"
             , Text
"полторы"
             , Text
"один с половиной"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
3.5)
             [ Text
"3.5"
             , Text
"три с половиной"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
1.1)
             [ Text
"1.1"
             , Text
"1.10"
             , Text
"01.10"
             , Text
"1 точка 1"
             , Text
"один точка один"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
0.77)
             [ Text
"0.77"
             , Text
".77"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
100000)
             [ Text
"100000"
             , Text
"100к"
             , Text
"100К"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
3000000)
             [ Text
"3М"
             , Text
"3000К"
             , Text
"3000000"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue Double
1200000)
             [ Text
"1200000"
             , Text
"1.2М"
             , Text
"1200К"
             , Text
".0012Г"
             ]
  , NumeralValue -> [Text] -> [Example]
forall a. ToJSON a => a -> [Text] -> [Example]
examples (Double -> NumeralValue
NumeralValue (-Double
1200000))
             [ Text
"-1200000"
             , Text
"минус 1200000"
             , Text
"-1.2М"
             , Text
"-1200К"
             , Text
"-.0012Г"
             ]
  ]