-- 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. An additional grant
-- of patent rights can be found in the PATENTS file in the same directory.

-----------------------------------------------------------------
-- Auto-generated by regenClassifiers
--
-- DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
--  @generated
-----------------------------------------------------------------
{-# LANGUAGE OverloadedStrings #-}
module Duckling.Ranking.Classifiers.EN_CA (classifiers) where
import Data.String
import Prelude
import qualified Data.HashMap.Strict as HashMap
import Duckling.Ranking.Types

classifiers :: Classifiers
classifiers
  = HashMap.fromList
      [("Bhai Dooj",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<integer> to|till|before <hour-of-day>",
        Classifier{okData =
                     ClassData{prior = -2.0794415416798357, unseen = -1.791759469228055,
                               likelihoods =
                                 HashMap.fromList
                                   [("integer (numeric)noon|midnight|EOD|end of day",
                                     -0.916290731874155),
                                    ("hour", -0.916290731874155)],
                               n = 1},
                   koData =
                     ClassData{prior = -0.13353139262452263,
                               unseen = -2.890371757896165,
                               likelihoods =
                                 HashMap.fromList
                                   [("hour", -0.7537718023763802),
                                    ("integer (numeric)time-of-day (latent)", -0.7537718023763802)],
                               n = 7}}),
       ("<time> timezone",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -3.4657359027997265,
                               likelihoods =
                                 HashMap.fromList
                                   [("at <time-of-day>", -1.824549292051046),
                                    ("<time-of-day> am|pm", -1.6422277352570913),
                                    ("hh:mm", -1.824549292051046), ("hour", -1.1314021114911006),
                                    ("minute", -1.824549292051046)],
                               n = 13},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Thursday",
        Classifier{okData =
                     ClassData{prior = -8.961215868968717e-2,
                               unseen = -3.5263605246161616,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 32},
                   koData =
                     ClassData{prior = -2.456735772821304, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3}}),
       ("integer (numeric)",
        Classifier{okData =
                     ClassData{prior = -0.5818290513461541, unseen = -5.768320995793772,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 318},
                   koData =
                     ClassData{prior = -0.818427494994547, unseen = -5.53338948872752,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 251}}),
       ("<year> (bc|ad)",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.9459101490553135,
                               likelihoods = HashMap.fromList [("integer (numeric)", 0.0)],
                               n = 5},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<duration> hence|ago",
        Classifier{okData =
                     ClassData{prior = -5.406722127027582e-2,
                               unseen = -3.784189633918261,
                               likelihoods =
                                 HashMap.fromList
                                   [("week", -1.563975538357343), ("day", -1.8152899666382492),
                                    ("year", -2.662587827025453),
                                    ("<integer> <unit-of-duration>", -1.0531499145913523),
                                    ("a <unit-of-duration>", -2.662587827025453),
                                    ("month", -2.662587827025453),
                                    ("fortnight", -2.662587827025453)],
                               n = 18},
                   koData =
                     ClassData{prior = -2.9444389791664407,
                               unseen = -2.3025850929940455,
                               likelihoods =
                                 HashMap.fromList
                                   [("year", -1.5040773967762742),
                                    ("<integer> <unit-of-duration>", -1.5040773967762742)],
                               n = 1}}),
       ("noon|midnight|EOD|end of day",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.9459101490553135,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 5},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("quarter to|till|before <hour-of-day>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods =
                                 HashMap.fromList
                                   [("noon|midnight|EOD|end of day", -0.6931471805599453),
                                    ("hour", -0.6931471805599453)],
                               n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Father's Day",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<cycle> after|before <time>",
        Classifier{okData =
                     ClassData{prior = -0.6931471805599453, unseen = -2.833213344056216,
                               likelihoods =
                                 HashMap.fromList
                                   [("day (grain)tomorrow", -1.6739764335716716),
                                    ("dayday", -1.1631508098056809),
                                    ("day (grain)yesterday", -1.6739764335716716)],
                               n = 4},
                   koData =
                     ClassData{prior = -0.6931471805599453, unseen = -2.833213344056216,
                               likelihoods =
                                 HashMap.fromList
                                   [("dayhour", -1.6739764335716716),
                                    ("year (grain)Christmas", -2.0794415416798357),
                                    ("dayday", -2.0794415416798357),
                                    ("day (grain)intersect", -1.6739764335716716),
                                    ("day (grain)Easter Sunday", -2.0794415416798357),
                                    ("yearday", -2.0794415416798357)],
                               n = 4}}),
       ("Easter Monday",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Navaratri",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Martin Luther King's Day",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.3025850929940455,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 8},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("integer (20..90)",
        Classifier{okData =
                     ClassData{prior = -0.6931471805599453,
                               unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -0.6931471805599453,
                               unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3}}),
       ("Shemini Atzeret",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Ramadan",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Lazarus Saturday",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("intersect 2 numbers",
        Classifier{okData =
                     ClassData{prior = -0.6931471805599453, unseen = -1.791759469228055,
                               likelihoods =
                                 HashMap.fromList
                                   [("compose by multiplicationinteger (0..19)",
                                     -0.2231435513142097)],
                               n = 3},
                   koData =
                     ClassData{prior = -0.6931471805599453, unseen = -1.791759469228055,
                               likelihoods =
                                 HashMap.fromList
                                   [("powers of tensinteger (0..19)", -0.2231435513142097)],
                               n = 3}}),
       ("mm/yyyy",
        Classifier{okData =
                     ClassData{prior = -0.6931471805599453,
                               unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -0.6931471805599453,
                               unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1}}),
       ("from|since|after <time>",
        Classifier{okData =
                     ClassData{prior = -1.540445040947149, unseen = -4.248495242049359,
                               likelihoods =
                                 HashMap.fromList
                                   [("<day-of-month> (ordinal or number) <named-month>",
                                     -3.5409593240373143),
                                    ("July", -3.5409593240373143),
                                    ("year (latent)", -3.1354942159291497),
                                    ("day", -3.1354942159291497),
                                    ("time-of-day (latent)", -2.624668592163159),
                                    ("year", -3.1354942159291497),
                                    ("<time-of-day> am|pm", -2.624668592163159),
                                    ("hh:mm", -2.624668592163159),
                                    ("<day-of-month> (ordinal)", -3.5409593240373143),
                                    ("hour", -2.03688192726104), ("month", -3.1354942159291497),
                                    ("minute", -2.624668592163159),
                                    ("August", -3.5409593240373143)],
                               n = 18},
                   koData =
                     ClassData{prior = -0.2411620568168881, unseen = -5.111987788356543,
                               likelihoods =
                                 HashMap.fromList
                                   [("<integer> to|till|before <hour-of-day>", -4.007333185232471),
                                    ("week", -4.412798293340635),
                                    ("<day-of-month> (ordinal or number) <named-month>",
                                     -4.412798293340635),
                                    ("today", -4.412798293340635),
                                    ("intersect", -2.540996116439044),
                                    ("<time> for <duration>", -4.412798293340635),
                                    ("second", -4.412798293340635), ("now", -3.71965111278069),
                                    ("tomorrow", -4.007333185232471),
                                    ("this|last|next <cycle>", -4.412798293340635),
                                    ("day", -1.927891643552635),
                                    ("time-of-day (latent)", -2.6210388241125804),
                                    ("<time-of-day> am|pm", -4.007333185232471),
                                    ("nograin", -3.71965111278069),
                                    ("<named-month>|<named-day> <day-of-month> (ordinal)",
                                     -4.412798293340635),
                                    ("<day-of-month> (ordinal)", -4.007333185232471),
                                    ("Easter Sunday", -4.412798293340635),
                                    ("Christmas", -3.71965111278069), ("hour", -2.3978952727983707),
                                    ("month", -4.412798293340635),
                                    ("<datetime> - <datetime> (interval)", -3.1600353248452673),
                                    ("<time-of-day> - <time-of-day> (interval)",
                                     -2.908720896564361),
                                    ("<named-month> <day-of-month> (non ordinal)",
                                     -4.007333185232471),
                                    ("minute", -1.927891643552635),
                                    ("right now", -4.412798293340635),
                                    ("<month> dd-dd (interval)", -3.71965111278069),
                                    ("part of days", -4.412798293340635),
                                    ("dd-dd <month> (interval)", -4.007333185232471)],
                               n = 66}}),
       ("integer after|past <hour-of-day>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.3025850929940455,
                               likelihoods =
                                 HashMap.fromList
                                   [("hour", -0.8109302162163288),
                                    ("integer (numeric)time-of-day (latent)", -1.0986122886681098),
                                    ("integer (20..90)time-of-day (latent)", -1.5040773967762742)],
                               n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<ordinal> last <cycle> of <time>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -3.4011973816621555,
                               likelihoods =
                                 HashMap.fromList
                                   [("ordinals (first..twentieth,thirtieth,...)week (grain)year (latent)",
                                     -2.268683541318364),
                                    ("daymonth", -2.268683541318364),
                                    ("ordinal (digits)day (grain)May", -2.6741486494265287),
                                    ("ordinals (first..twentieth,thirtieth,...)week (grain)intersect",
                                     -2.6741486494265287),
                                    ("weekmonth", -1.7578579175523736),
                                    ("ordinal (digits)week (grain)October", -2.6741486494265287),
                                    ("ordinal (digits)week (grain)intersect", -2.6741486494265287),
                                    ("ordinal (digits)week (grain)year (latent)",
                                     -2.6741486494265287),
                                    ("weekyear", -1.9810014688665833),
                                    ("ordinals (first..twentieth,thirtieth,...)week (grain)October",
                                     -2.6741486494265287),
                                    ("ordinals (first..twentieth,thirtieth,...)day (grain)May",
                                     -2.6741486494265287)],
                               n = 9},
                   koData =
                     ClassData{prior = -infinity, unseen = -2.4849066497880004,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Yom HaShoah",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<day-of-month> (ordinal or number) <named-month>",
        Classifier{okData =
                     ClassData{prior = -1.0296194171811581,
                               unseen = -3.0910424533583156,
                               likelihoods =
                                 HashMap.fromList
                                   [("ordinal (digits)December", -1.6582280766035324),
                                    ("ordinal (digits)February", -2.3513752571634776),
                                    ("integer (numeric)April", -2.3513752571634776),
                                    ("month", -1.252762968495368)],
                               n = 5},
                   koData =
                     ClassData{prior = -0.4418327522790392,
                               unseen = -3.4011973816621555,
                               likelihoods =
                                 HashMap.fromList
                                   [("ordinal (digits)October", -2.6741486494265287),
                                    ("ordinal (digits)July", -2.6741486494265287),
                                    ("integer (numeric)September", -2.268683541318364),
                                    ("ordinal (digits)August", -2.6741486494265287),
                                    ("integer (numeric)August", -2.6741486494265287),
                                    ("ordinal (digits)April", -2.6741486494265287),
                                    ("month", -1.0647107369924282),
                                    ("integer (numeric)July", -2.268683541318364)],
                               n = 9}}),
       ("<time> <part-of-day>",
        Classifier{okData =
                     ClassData{prior = -9.237332013101517e-2,
                               unseen = -4.48863636973214,
                               likelihoods =
                                 HashMap.fromList
                                   [("<day-of-month> (ordinal)in|during the <part-of-day>",
                                     -3.784189633918261),
                                    ("dayhour", -1.4816045409242156),
                                    ("Mondayearly morning", -3.378724525810097),
                                    ("time-of-day (latent)tonight", -3.378724525810097),
                                    ("hourhour", -2.3978952727983707),
                                    ("<time-of-day> o'clockin|during the <part-of-day>",
                                     -3.784189633918261),
                                    ("todaypart of days", -3.784189633918261),
                                    ("minutehour", -2.6855773452501515),
                                    ("at <time-of-day>in|during the <part-of-day>",
                                     -3.378724525810097),
                                    ("time-of-day (latent)this <part-of-day>", -3.784189633918261),
                                    ("Mondayin|during the <part-of-day>", -3.784189633918261),
                                    ("intersectpart of days", -3.784189633918261),
                                    ("intersectin|during the <part-of-day>", -3.784189633918261),
                                    ("<day-of-month> (ordinal or number) of <named-month>in|during the <part-of-day>",
                                     -3.784189633918261),
                                    ("the <day-of-month> (ordinal)in|during the <part-of-day>",
                                     -3.784189633918261),
                                    ("tomorrowpart of days", -2.3978952727983707),
                                    ("hh:mmin|during the <part-of-day>", -3.0910424533583156),
                                    ("time-of-day (latent)in|during the <part-of-day>",
                                     -3.784189633918261),
                                    ("hhmm (latent)in|during the <part-of-day>",
                                     -3.784189633918261),
                                    ("yesterdaypart of days", -3.378724525810097),
                                    ("<day-of-month> (ordinal or number) of <month>in|during the <part-of-day>",
                                     -3.784189633918261),
                                    ("Mondaypart of days", -3.784189633918261)],
                               n = 31},
                   koData =
                     ClassData{prior = -2.4277482359480516,
                               unseen = -3.4965075614664802,
                               likelihoods =
                                 HashMap.fromList
                                   [("yearhour", -2.772588722239781),
                                    ("monthhour", -2.772588722239781),
                                    ("hourhour", -2.772588722239781),
                                    ("year (latent)in|during the <part-of-day>",
                                     -2.772588722239781),
                                    ("Februaryin|during the <part-of-day>", -2.772588722239781),
                                    ("time-of-day (latent)in|during the <part-of-day>",
                                     -2.772588722239781)],
                               n = 3}}),
       ("today",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.9459101490553135,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 5},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("mm/dd",
        Classifier{okData =
                     ClassData{prior = -1.2729656758128873,
                               unseen = -2.1972245773362196,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 7},
                   koData =
                     ClassData{prior = -0.3285040669720361, unseen = -2.995732273553991,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 18}}),
       ("at <time-of-day>",
        Classifier{okData =
                     ClassData{prior = -8.4557388028063e-2, unseen = -5.003946305945459,
                               likelihoods =
                                 HashMap.fromList
                                   [("<time> timezone", -3.898599985096005),
                                    ("noon|midnight|EOD|end of day", -3.898599985096005),
                                    ("integer after|past <hour-of-day>", -3.898599985096005),
                                    ("half after|past <hour-of-day>", -4.304065093204169),
                                    ("time-of-day (latent)", -1.6650077635889111),
                                    ("hhmm (latent)", -3.6109179126442243),
                                    ("<time-of-day> am|pm", -1.7783364488959144),
                                    ("hh:mm", -3.3877743613300146),
                                    ("about|exactly <time-of-day>", -3.898599985096005),
                                    ("hour", -1.0459685551826876),
                                    ("<time-of-day> sharp|exactly", -4.304065093204169),
                                    ("minute", -2.10684051586795)],
                               n = 68},
                   koData =
                     ClassData{prior = -2.512305623976115, unseen = -3.2188758248682006,
                               likelihoods =
                                 HashMap.fromList
                                   [("time-of-day (latent)", -1.2321436812926323),
                                    ("hour", -1.2321436812926323)],
                               n = 6}}),
       ("December",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("absorption of , after named day",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -3.332204510175204,
                               likelihoods =
                                 HashMap.fromList
                                   [("on <date>", -2.1972245773362196),
                                    ("Wednesday", -2.6026896854443837),
                                    ("Saturday", -2.6026896854443837),
                                    ("Monday", -2.1972245773362196),
                                    ("Friday", -1.9095425048844386), ("day", -0.8979415932059586),
                                    ("Sunday", -2.6026896854443837)],
                               n = 10},
                   koData =
                     ClassData{prior = -infinity, unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("September",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 6},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("tonight",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 6},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("last|past|next <duration>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -4.2626798770413155,
                               likelihoods =
                                 HashMap.fromList
                                   [("week", -2.456735772821304), ("second", -2.639057329615259),
                                    ("day", -2.3025850929940455), ("year", -2.639057329615259),
                                    ("<integer> <unit-of-duration>", -0.7827593392496325),
                                    ("hour", -2.639057329615259), ("month", -2.639057329615259),
                                    ("minute", -2.639057329615259)],
                               n = 31},
                   koData =
                     ClassData{prior = -infinity, unseen = -2.1972245773362196,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("the ides of <named-month>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods =
                                 HashMap.fromList
                                   [("March", -0.6931471805599453), ("month", -0.6931471805599453)],
                               n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("on <date>",
        Classifier{okData =
                     ClassData{prior = -0.13353139262452263,
                               unseen = -4.204692619390966,
                               likelihoods =
                                 HashMap.fromList
                                   [("Thursday", -1.4816045409242156),
                                    ("mm/dd", -3.4965075614664802),
                                    ("absorption of , after named day", -3.0910424533583156),
                                    ("intersect", -3.0910424533583156),
                                    ("Saturday", -2.803360380906535),
                                    ("Friday", -3.4965075614664802), ("day", -0.8574502318512216),
                                    ("the <day-of-month> (ordinal)", -3.0910424533583156),
                                    ("intersect by \",\", \"of\", \"from\", \"'s\"",
                                     -2.803360380906535),
                                    ("hour", -3.4965075614664802)],
                               n = 28},
                   koData =
                     ClassData{prior = -2.0794415416798357,
                               unseen = -2.9444389791664407,
                               likelihoods =
                                 HashMap.fromList
                                   [("intersect", -1.791759469228055), ("day", -1.2809338454620642),
                                    ("intersect by \",\", \"of\", \"from\", \"'s\"",
                                     -1.791759469228055)],
                               n = 4}}),
       ("integer (0..19)",
        Classifier{okData =
                     ClassData{prior = -0.10919929196499197,
                               unseen = -3.9889840465642745,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 52},
                   koData =
                     ClassData{prior = -2.268683541318364, unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 6}}),
       ("between <time-of-day> and <time-of-day> (interval)",
        Classifier{okData =
                     ClassData{prior = -0.6931471805599453,
                               unseen = -3.1354942159291497,
                               likelihoods =
                                 HashMap.fromList
                                   [("minuteminute", -0.7884573603642702),
                                    ("hh:mmhh:mm", -0.7884573603642702)],
                               n = 9},
                   koData =
                     ClassData{prior = -0.6931471805599453,
                               unseen = -3.1354942159291497,
                               likelihoods =
                                 HashMap.fromList
                                   [("hh:mmtime-of-day (latent)", -0.7884573603642702),
                                    ("minutehour", -0.7884573603642702)],
                               n = 9}}),
       ("Halloween",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Passover",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("from <month> dd-dd (interval)",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.3978952727983707,
                               likelihoods =
                                 HashMap.fromList
                                   [("Julyinteger (numeric)integer (numeric)", -1.6094379124341003),
                                    ("Augustordinal (digits)integer (numeric)",
                                     -1.6094379124341003),
                                    ("month", -0.916290731874155),
                                    ("Augustordinal (digits)ordinal (digits)",
                                     -1.6094379124341003)],
                               n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("October",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.995732273553991,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 18},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("month (grain)",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.833213344056216,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 15},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<integer> more <unit-of-duration>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods =
                                 HashMap.fromList
                                   [("integer (numeric)minute (grain)", -0.6931471805599453),
                                    ("minute", -0.6931471805599453)],
                               n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<time-of-day> o'clock",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.1972245773362196,
                               likelihoods =
                                 HashMap.fromList
                                   [("time-of-day (latent)", -0.6931471805599453),
                                    ("hour", -0.6931471805599453)],
                               n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Vesak",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 4},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Earth Hour",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("in|within|after <duration>",
        Classifier{okData =
                     ClassData{prior = -0.12516314295400605,
                               unseen = -4.6913478822291435,
                               likelihoods =
                                 HashMap.fromList
                                   [("week", -3.295836866004329),
                                    ("<integer> more <unit-of-duration>", -3.9889840465642745),
                                    ("three-quarters of an hour", -3.0726933146901194),
                                    ("<integer> + '\"", -3.295836866004329),
                                    ("number.number hours", -3.9889840465642745),
                                    ("second", -3.58351893845611),
                                    ("half a <time-grain>", -3.0726933146901194),
                                    ("day", -3.295836866004329), ("year", -3.9889840465642745),
                                    ("<integer> <unit-of-duration>", -1.6376087894007967),
                                    ("a <unit-of-duration>", -3.0726933146901194),
                                    ("quarter of an hour", -3.0726933146901194),
                                    ("hour", -2.6026896854443837),
                                    ("about|exactly <duration>", -3.9889840465642745),
                                    ("half an hour (abbrev).", -3.58351893845611),
                                    ("<integer> and an half hour", -3.9889840465642745),
                                    ("minute", -1.2809338454620642)],
                               n = 45},
                   koData =
                     ClassData{prior = -2.1400661634962708,
                               unseen = -3.4339872044851463,
                               likelihoods =
                                 HashMap.fromList
                                   [("quarter", -2.3025850929940455), ("year", -1.791759469228055),
                                    ("<integer> <unit-of-duration>", -1.791759469228055),
                                    ("a <unit-of-duration>", -2.3025850929940455)],
                               n = 6}}),
       ("January",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("three-quarters of an hour",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 4},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Mattu Pongal",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Wednesday",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.3025850929940455,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 8},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("half after|past <hour-of-day>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.9459101490553135,
                               likelihoods =
                                 HashMap.fromList
                                   [("time-of-day (latent)", -0.6931471805599453),
                                    ("hour", -0.6931471805599453)],
                               n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<integer> + '\"",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("integer (numeric)", 0.0)],
                               n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("half <integer> (UK style hour-of-day)",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods =
                                 HashMap.fromList
                                   [("time-of-day (latent)", -0.6931471805599453),
                                    ("hour", -0.6931471805599453)],
                               n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Family Day",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 4},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("July",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.833213344056216,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 15},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("hour (grain)",
        Classifier{okData =
                     ClassData{prior = -0.48550781578170077,
                               unseen = -2.890371757896165,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 16},
                   koData =
                     ClassData{prior = -0.9555114450274363,
                               unseen = -2.4849066497880004,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 10}}),
       ("Shavuot",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Vimy Ridge Day",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<day> <duration> hence|ago",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods =
                                 HashMap.fromList
                                   [("dayyear", -0.6931471805599453),
                                    ("Diwali<integer> <unit-of-duration>", -0.6931471805599453)],
                               n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<ordinal> quarter",
        Classifier{okData =
                     ClassData{prior = -0.4700036292457356, unseen = -2.639057329615259,
                               likelihoods =
                                 HashMap.fromList
                                   [("ordinal (digits)quarter (grain)", -1.1786549963416462),
                                    ("ordinals (first..twentieth,thirtieth,...)quarter (grain)",
                                     -1.466337068793427),
                                    ("quarter", -0.7731898882334817)],
                               n = 5},
                   koData =
                     ClassData{prior = -0.9808292530117262,
                               unseen = -2.3025850929940455,
                               likelihoods =
                                 HashMap.fromList
                                   [("ordinal (digits)quarter (grain)", -0.8109302162163288),
                                    ("quarter", -0.8109302162163288)],
                               n = 3}}),
       ("Boss's Day",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 6},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Orthodox Easter Sunday",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("one twenty two",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("May",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("intersect",
        Classifier{okData =
                     ClassData{prior = -0.45391749149411126, unseen = -6.78105762593618,
                               likelihoods =
                                 HashMap.fromList
                                   [("Navaratriyear (latent)", -6.0867747269123065),
                                    ("Father's Dayyear (latent)", -6.0867747269123065),
                                    ("Ramadanyear (latent)", -6.0867747269123065),
                                    ("<datetime> - <datetime> (interval)on <date>",
                                     -4.834011758416939),
                                    ("Bhai Doojyear (latent)", -6.0867747269123065),
                                    ("<time-of-day> - <time-of-day> (interval)on <date>",
                                     -4.834011758416939),
                                    ("hourday", -4.382026634673881),
                                    ("dayhour", -3.283414346005772),
                                    ("Martin Luther King's Dayyear (latent)", -5.681309618804143),
                                    ("Shemini Atzeretyear (latent)", -6.0867747269123065),
                                    ("daymonth", -5.170483995038151),
                                    ("monthday", -5.681309618804143),
                                    ("monthyear", -4.295015257684252),
                                    ("Yom Ha'atzmautyear (latent)", -6.0867747269123065),
                                    ("Vijayadashamiyear (latent)", -6.0867747269123065),
                                    ("Administrative Professionals' Dayyear (latent)",
                                     -5.681309618804143),
                                    ("Thanksgiving Dayyear (latent)", -4.988162438244197),
                                    ("Thai Pongalyear (latent)", -5.393627546352362),
                                    ("Thiru Onamyear (latent)", -5.393627546352362),
                                    ("Tuesdaythe <day-of-month> (ordinal)", -6.0867747269123065),
                                    ("from <datetime> - <datetime> (interval)July",
                                     -6.0867747269123065),
                                    ("houryear", -5.393627546352362),
                                    ("this|next <day-of-week>hh(:mm) - <time-of-day> am|pm",
                                     -6.0867747269123065),
                                    ("Christmas<time-of-day> am|pm", -6.0867747269123065),
                                    ("last <day-of-week> of <time>year (latent)",
                                     -6.0867747269123065),
                                    ("<time-of-day> am|pmintersect by \",\", \"of\", \"from\", \"'s\"",
                                     -5.393627546352362),
                                    ("<time-of-day> am|pmintersect", -4.834011758416939),
                                    ("Earth Houryear (latent)", -6.0867747269123065),
                                    ("Family Dayyear (latent)", -5.170483995038151),
                                    ("Octoberyear (latent)", -4.582697330136033),
                                    ("intersect<time-of-day> am|pm", -6.0867747269123065),
                                    ("Mattu Pongalyear (latent)", -6.0867747269123065),
                                    ("Shavuotyear (latent)", -6.0867747269123065),
                                    ("Dhanterasin <named-month>|year", -6.0867747269123065),
                                    ("at <time-of-day>in|within|after <duration>",
                                     -6.0867747269123065),
                                    ("Thursdayhh(:mm) - <time-of-day> am|pm", -6.0867747269123065),
                                    ("<named-month>|<named-day> <day-of-month> (ordinal)year (latent)",
                                     -5.681309618804143),
                                    ("Marchyear (latent)", -6.0867747269123065),
                                    ("Sukkotyear (latent)", -5.681309618804143),
                                    ("intersect by \",\", \"of\", \"from\", \"'s\"year (latent)",
                                     -6.0867747269123065),
                                    ("Clean Mondayyear (latent)", -5.681309618804143),
                                    ("monthhour", -5.681309618804143),
                                    ("todayat <time-of-day>", -6.0867747269123065),
                                    ("Thursday<time> timezone", -4.382026634673881),
                                    ("from|since|after <time>December", -6.0867747269123065),
                                    ("this <time>hh(:mm) - <time-of-day> am|pm",
                                     -6.0867747269123065),
                                    ("Palm SundaySunday", -5.681309618804143),
                                    ("dayday", -3.8895501495760874),
                                    ("<time> <part-of-day>at <time-of-day>", -6.0867747269123065),
                                    ("mm/ddat <time-of-day>", -6.0867747269123065),
                                    ("tonightat <time-of-day>", -6.0867747269123065),
                                    ("<time-of-day> am|pmabsorption of , after named day",
                                     -5.393627546352362),
                                    ("today<time-of-day> am|pm", -6.0867747269123065),
                                    ("Februarythe <day-of-month> (ordinal)", -5.681309618804143),
                                    ("at <time-of-day><time> <part-of-day>", -6.0867747269123065),
                                    ("mm/dd<time-of-day> am|pm", -6.0867747269123065),
                                    ("hourhour", -4.834011758416939),
                                    ("<time-of-day> am|pmon <date>", -4.071871706370042),
                                    ("National Patriots' Dayyear (latent)", -5.393627546352362),
                                    ("Wednesdaythis|last|next <cycle>", -6.0867747269123065),
                                    ("Lentyear (latent)", -6.0867747269123065),
                                    ("intersect<named-month> <day-of-month> (non ordinal)",
                                     -4.582697330136033),
                                    ("Boghiyear (latent)", -6.0867747269123065),
                                    ("dayyear", -1.9123874570166697),
                                    ("Thursdayfrom|since|after <time>", -5.681309618804143),
                                    ("<time-of-day> o'clockin|during the <part-of-day>",
                                     -6.0867747269123065),
                                    ("Thursdayat <time-of-day>", -5.681309618804143),
                                    ("Islamic New Yearyear (latent)", -5.681309618804143),
                                    ("Laylat al-Qadryear (latent)", -5.170483995038151),
                                    ("Chhathin <named-month>|year", -6.0867747269123065),
                                    ("Vasant Panchamiin <named-month>|year", -6.0867747269123065),
                                    ("Diwaliin <named-month>|year", -6.0867747269123065),
                                    ("Discovery Dayyear (latent)", -5.681309618804143),
                                    ("Shrove Tuesdayyear (latent)", -6.0867747269123065),
                                    ("intersect by \",\", \"of\", \"from\" for year<time-of-day> am|pm",
                                     -5.393627546352362),
                                    ("<time-of-day> am|pmtomorrow", -5.393627546352362),
                                    ("Yom Kippuryear (latent)", -6.0867747269123065),
                                    ("<part-of-day> of <time>year (latent)", -6.0867747269123065),
                                    ("minutehour", -5.170483995038151),
                                    ("Kaanum Pongalyear (latent)", -5.681309618804143),
                                    ("Maha Saptamiyear (latent)", -6.0867747269123065),
                                    ("at <time-of-day>in|during the <part-of-day>",
                                     -5.681309618804143),
                                    ("absorption of , after named day<named-month> <day-of-month> (non ordinal)",
                                     -4.382026634673881),
                                    ("for <duration> from <time>December", -6.0867747269123065),
                                    ("tomorrow<time-of-day> sharp|exactly", -6.0867747269123065),
                                    ("Thursdayfrom <datetime> - <datetime> (interval)",
                                     -5.170483995038151),
                                    ("on <date><named-month> <day-of-month> (non ordinal)",
                                     -5.681309618804143),
                                    ("Pentecostyear (latent)", -6.0867747269123065),
                                    ("Thursdayfrom <time-of-day> - <time-of-day> (interval)",
                                     -5.170483995038151),
                                    ("Eid al-Fitryear (latent)", -6.0867747269123065),
                                    ("Mondayin|during the <part-of-day>", -6.0867747269123065),
                                    ("Raksha Bandhanyear (latent)", -6.0867747269123065),
                                    ("tomorrowfrom <time-of-day> - <time-of-day> (interval)",
                                     -5.681309618804143),
                                    ("Navaratriin <named-month>|year", -6.0867747269123065),
                                    ("Ashurayear (latent)", -6.0867747269123065),
                                    ("Chinese New Yearyear (latent)", -6.0867747269123065),
                                    ("Sundayyear (latent)", -6.0867747269123065),
                                    ("Lag BaOmeryear (latent)", -6.0867747269123065),
                                    ("last weekend of <named-month>year (latent)",
                                     -6.0867747269123065),
                                    ("Eid al-Adhayear (latent)", -5.170483995038151),
                                    ("intersectin|during the <part-of-day>", -6.0867747269123065),
                                    ("Christmasat <time-of-day>", -6.0867747269123065),
                                    ("Passoveryear (latent)", -6.0867747269123065),
                                    ("Lazarus Saturdayyear (latent)", -6.0867747269123065),
                                    ("<day-of-month> (ordinal or number) <named-month>year (latent)",
                                     -6.0867747269123065),
                                    ("Yom HaShoahyear (latent)", -5.681309618804143),
                                    ("Thursday<datetime> - <datetime> (interval)",
                                     -5.681309618804143),
                                    ("<day-of-month> (ordinal or number) of <named-month>in|during the <part-of-day>",
                                     -6.0867747269123065),
                                    ("Thai Pongalin <named-month>|year", -6.0867747269123065),
                                    ("Septemberyear (latent)", -5.681309618804143),
                                    ("mm/ddyear (latent)", -6.0867747269123065),
                                    ("Thursday<time-of-day> - <time-of-day> (interval)",
                                     -4.834011758416939),
                                    ("Halloweenyear (latent)", -6.0867747269123065),
                                    ("<ordinal> last <cycle> of <time>year (latent)",
                                     -5.681309618804143),
                                    ("from <time-of-day> - <time-of-day> (interval)on <date>",
                                     -5.393627546352362),
                                    ("intersect by \",\", \"of\", \"from\", \"'s\"<time-of-day> am|pm",
                                     -6.0867747269123065),
                                    ("at <time-of-day>intersect", -5.681309618804143),
                                    ("Rosh Hashanahyear (latent)", -5.393627546352362),
                                    ("Dhanterasyear (latent)", -6.0867747269123065),
                                    ("Tu BiShvatyear (latent)", -6.0867747269123065),
                                    ("Holiyear (latent)", -5.393627546352362),
                                    ("<time-of-day> - <time-of-day> (interval)tomorrow",
                                     -6.0867747269123065),
                                    ("Holika Dahanyear (latent)", -5.393627546352362),
                                    ("at <time-of-day>intersect by \",\", \"of\", \"from\", \"'s\"",
                                     -6.0867747269123065),
                                    ("dayminute", -3.4477173972970485),
                                    ("Mawlidyear (latent)", -6.0867747269123065),
                                    ("from <datetime> - <datetime> (interval)on <date>",
                                     -5.681309618804143),
                                    ("<datetime> - <datetime> (interval)tomorrow",
                                     -6.0867747269123065),
                                    ("Jumu'atul-Widayear (latent)", -5.170483995038151),
                                    ("minuteday", -2.4491885671859213),
                                    ("absorption of , after named dayintersect",
                                     -6.0867747269123065),
                                    ("intersectyear (latent)", -6.0867747269123065),
                                    ("Orthodox Easter Sundayyear (latent)", -6.0867747269123065),
                                    ("<ordinal> <cycle> of <time>year (latent)",
                                     -6.0867747269123065),
                                    ("the <day-of-month> (ordinal)in|during the <part-of-day>",
                                     -6.0867747269123065),
                                    ("Boss's Dayyear (latent)", -5.681309618804143),
                                    ("Global Youth Service Dayyear (latent)", -6.0867747269123065),
                                    ("Tisha B'Avyear (latent)", -6.0867747269123065),
                                    ("Isra and Mi'rajyear (latent)", -5.170483995038151),
                                    ("at <time-of-day>absorption of , after named day",
                                     -6.0867747269123065),
                                    ("Christmasyear (latent)", -5.681309618804143),
                                    ("Naraka Chaturdashiyear (latent)", -5.681309618804143),
                                    ("at <time-of-day>on <date>", -4.988162438244197),
                                    ("between <time-of-day> and <time-of-day> (interval)on <date>",
                                     -4.477336814478207),
                                    ("dayweek", -6.0867747269123065),
                                    ("Easter Sundayyear (latent)", -5.393627546352362),
                                    ("Labour Dayyear (latent)", -6.0867747269123065),
                                    ("weekyear", -4.988162438244197),
                                    ("hh:mmin|during the <part-of-day>", -5.393627546352362),
                                    ("<cycle> after|before <time><time-of-day> am|pm",
                                     -5.681309618804143),
                                    ("Hanukkahyear (latent)", -5.393627546352362),
                                    ("February<time> <part-of-day>", -6.0867747269123065),
                                    ("Tuesdayin <named-month>|year", -6.0867747269123065),
                                    ("Great Lentyear (latent)", -6.0867747269123065),
                                    ("tomorrowat <time-of-day>", -5.393627546352362),
                                    ("between <time> and <time>on <date>", -4.477336814478207),
                                    ("absorption of , after named dayintersect by \",\", \"of\", \"from\" for year",
                                     -6.0867747269123065),
                                    ("last <cycle> of <time>year (latent)", -5.393627546352362),
                                    ("at <time-of-day>tomorrow", -5.681309618804143),
                                    ("tomorrow<time-of-day> am|pm", -6.0867747269123065),
                                    ("<named-month> <day-of-month> (non ordinal)year (latent)",
                                     -6.0867747269123065),
                                    ("Diwaliyear (latent)", -6.0867747269123065),
                                    ("Black Fridayyear (latent)", -5.681309618804143),
                                    ("the <ordinal> last <cycle> of <time>year (latent)",
                                     -6.0867747269123065),
                                    ("in|during the <part-of-day>at <time-of-day>",
                                     -6.0867747269123065),
                                    ("Chhathyear (latent)", -5.681309618804143),
                                    ("Vasant Panchamiyear (latent)", -6.0867747269123065),
                                    ("Palm Sundayintersect", -6.0867747269123065),
                                    ("<day-of-month> (ordinal or number) of <month>in|during the <part-of-day>",
                                     -6.0867747269123065),
                                    ("Februaryintersect", -6.0867747269123065),
                                    ("Mother's Dayyear (latent)", -6.0867747269123065),
                                    ("Simchat Torahyear (latent)", -6.0867747269123065),
                                    ("Victoria Dayyear (latent)", -5.681309618804143),
                                    ("minuteyear", -6.0867747269123065)],
                               n = 329},
                   koData =
                     ClassData{prior = -1.0082282271998406, unseen = -6.398594934535208,
                               likelihoods =
                                 HashMap.fromList
                                   [("<time-of-day> - <time-of-day> (interval)on <date>",
                                     -4.787491742782046),
                                    ("hourday", -4.787491742782046),
                                    ("<named-month> <day-of-month> (non ordinal)July",
                                     -5.703782474656201),
                                    ("dayhour", -3.138833117194664),
                                    ("Tuesdayfrom|since|after <time>", -5.703782474656201),
                                    ("daymonth", -3.56371631115993),
                                    ("monthday", -5.298317366548036),
                                    ("monthyear", -4.451019506160833),
                                    ("<time-of-day> am|pmyear (latent)", -5.298317366548036),
                                    ("Thai Pongalyear (latent)", -5.0106352940962555),
                                    ("intersecthh:mm", -5.703782474656201),
                                    ("from <datetime> - <datetime> (interval)July",
                                     -5.703782474656201),
                                    ("houryear", -4.787491742782046),
                                    ("from <time-of-day> - <time-of-day> (interval)July",
                                     -5.703782474656201),
                                    ("<time-of-day> am|pmintersect by \",\", \"of\", \"from\", \"'s\"",
                                     -5.0106352940962555),
                                    ("<time-of-day> am|pmintersect", -4.451019506160833),
                                    ("until <time>on <date>", -5.0106352940962555),
                                    ("Octoberyear (latent)", -5.703782474656201),
                                    ("July<day-of-month> (ordinal or number) <named-month>",
                                     -5.703782474656201),
                                    ("<named-month>|<named-day> <day-of-month> (ordinal)year (latent)",
                                     -4.451019506160833),
                                    ("about|exactly <time-of-day>year (latent)",
                                     -5.703782474656201),
                                    ("absorption of , after named dayJuly", -5.298317366548036),
                                    ("from|since|after <time>July", -5.703782474656201),
                                    ("intersect by \",\", \"of\", \"from\", \"'s\"year (latent)",
                                     -4.787491742782046),
                                    ("Clean Mondayyear (latent)", -5.703782474656201),
                                    ("monthhour", -5.703782474656201),
                                    ("hourmonth", -4.787491742782046),
                                    ("todayat <time-of-day>", -5.703782474656201),
                                    ("from|since|after <time>December", -5.703782474656201),
                                    ("from|since|after <time><time-of-day> am|pm",
                                     -5.703782474656201),
                                    ("Mondayyear (latent)", -5.0106352940962555),
                                    ("dayday", -5.298317366548036),
                                    ("mm/ddat <time-of-day>", -5.298317366548036),
                                    ("<time-of-day> am|pmon <date>", -4.451019506160833),
                                    ("dayyear", -2.7333680090865),
                                    ("Thursdaymm/dd", -5.703782474656201),
                                    ("New Year's Dayyear (latent)", -5.298317366548036),
                                    ("Thursdayfrom|since|after <time>", -3.9990343824177756),
                                    ("Thursdayat <time-of-day>", -4.451019506160833),
                                    ("<integer> to|till|before <hour-of-day>September",
                                     -5.703782474656201),
                                    ("Aprilyear (latent)", -5.703782474656201),
                                    ("monthminute", -5.703782474656201),
                                    ("<time-of-day> am|pmtomorrow", -5.703782474656201),
                                    ("Thursdayhh:mm", -4.787491742782046),
                                    ("August<day-of-month> (ordinal or number) <named-month>",
                                     -5.703782474656201),
                                    ("minutemonth", -3.912023005428146),
                                    ("week-endin <named-month>|year", -5.703782474656201),
                                    ("Augustyear (latent)", -5.298317366548036),
                                    ("Thursdayfrom <datetime> - <datetime> (interval)",
                                     -5.298317366548036),
                                    ("Thursdayfrom <time-of-day> - <time-of-day> (interval)",
                                     -5.298317366548036),
                                    ("mm/dd<time-of-day> - <time-of-day> (interval)",
                                     -5.298317366548036),
                                    ("tomorrowfrom <time-of-day> - <time-of-day> (interval)",
                                     -5.703782474656201),
                                    ("Sundayyear (latent)", -5.0106352940962555),
                                    ("Christmasat <time-of-day>", -5.703782474656201),
                                    ("from|since|after <time>year (latent)", -4.451019506160833),
                                    ("<duration> after|before|from <time>December",
                                     -5.703782474656201),
                                    ("yesterday<time-of-day> am|pm", -5.703782474656201),
                                    ("intersect by \",\", \"of\", \"from\", \"'s\"hh:mm",
                                     -5.703782474656201),
                                    ("mm/ddyear (latent)", -5.703782474656201),
                                    ("Thursday<time-of-day> - <time-of-day> (interval)",
                                     -5.0106352940962555),
                                    ("<named-month> <day-of-month> (non ordinal)August",
                                     -5.703782474656201),
                                    ("at <time-of-day>intersect", -5.298317366548036),
                                    ("hh:mmyear (latent)", -4.605170185988091),
                                    ("Holiyear (latent)", -5.703782474656201),
                                    ("until <time><time-of-day> am|pm", -5.703782474656201),
                                    ("at <time-of-day>intersect by \",\", \"of\", \"from\", \"'s\"",
                                     -5.703782474656201),
                                    ("dayminute", -3.1780538303479458),
                                    ("intersectSeptember", -4.199705077879927),
                                    ("minuteday", -2.635729539522584),
                                    ("absorption of , after named dayintersect",
                                     -5.703782474656201),
                                    ("Februaryin|during the <part-of-day>", -5.703782474656201),
                                    ("hh:mmon <date>", -3.6888794541139363),
                                    ("Saturdayyear (latent)", -5.703782474656201),
                                    ("from|since|after <time>on <date>", -4.787491742782046),
                                    ("absorption of , after named daySeptember",
                                     -4.787491742782046),
                                    ("Naraka Chaturdashiyear (latent)", -5.703782474656201),
                                    ("on <date>September", -5.298317366548036),
                                    ("at <time-of-day>on <date>", -5.298317366548036),
                                    ("in <named-month>|yearyear (latent)", -5.703782474656201),
                                    ("dayweek", -5.703782474656201),
                                    ("Easter Sundayyear (latent)", -5.298317366548036),
                                    ("Thursday<time-of-day> am|pm", -5.0106352940962555),
                                    ("weekyear", -5.298317366548036),
                                    ("<named-month> <day-of-month> (non ordinal)until <time>",
                                     -5.703782474656201),
                                    ("intersect by \",\", \"of\", \"from\" for yearhh:mm",
                                     -5.0106352940962555),
                                    ("Sundayfrom|since|after <time>", -5.703782474656201),
                                    ("absorption of , after named dayFebruary", -4.787491742782046),
                                    ("July<integer> to|till|before <hour-of-day>",
                                     -5.703782474656201),
                                    ("tomorrowat <time-of-day>", -5.703782474656201),
                                    ("<integer> to|till|before <hour-of-day>July",
                                     -5.703782474656201),
                                    ("last <cycle> of <time>year (latent)", -5.298317366548036),
                                    ("tomorrow<time-of-day> am|pm", -5.703782474656201),
                                    ("<named-month> <day-of-month> (non ordinal)year (latent)",
                                     -5.0106352940962555),
                                    ("Diwaliyear (latent)", -5.298317366548036),
                                    ("<time-of-day> - <time-of-day> (interval)July",
                                     -5.703782474656201),
                                    ("Fridayyear (latent)", -5.298317366548036),
                                    ("minuteyear", -4.451019506160833)],
                               n = 189}}),
       ("one eleven",
        Classifier{okData =
                     ClassData{prior = -1.3862943611198906,
                               unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -0.2876820724517809,
                               unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3}}),
       ("after lunch/work/school",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("early morning",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("in <number> (implicit minutes)",
        Classifier{okData =
                     ClassData{prior = -1.2685113254635072,
                               unseen = -2.4849066497880004,
                               likelihoods =
                                 HashMap.fromList
                                   [("integer (numeric)", -0.3184537311185346),
                                    ("integer (0..19)", -1.2992829841302609)],
                               n = 9},
                   koData =
                     ClassData{prior = -0.33024168687057687,
                               unseen = -3.258096538021482,
                               likelihoods =
                                 HashMap.fromList
                                   [("integer (numeric)", -0.2231435513142097),
                                    ("integer (0..19)", -1.6094379124341003)],
                               n = 23}}),
       ("<ordinal> <cycle> of <time>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.9444389791664407,
                               likelihoods =
                                 HashMap.fromList
                                   [("daymonth", -1.791759469228055),
                                    ("ordinal (digits)quarter (grain)year (latent)",
                                     -2.1972245773362196),
                                    ("quarteryear", -2.1972245773362196),
                                    ("ordinals (first..twentieth,thirtieth,...)day (grain)October",
                                     -2.1972245773362196),
                                    ("ordinal (digits)day (grain)this|last|next <cycle>",
                                     -2.1972245773362196),
                                    ("ordinals (first..twentieth,thirtieth,...)week (grain)intersect",
                                     -2.1972245773362196),
                                    ("weekmonth", -1.791759469228055),
                                    ("ordinals (first..twentieth,thirtieth,...)week (grain)October",
                                     -2.1972245773362196)],
                               n = 5},
                   koData =
                     ClassData{prior = -infinity, unseen = -2.1972245773362196,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("year (grain)",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -3.367295829986474,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 27},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("from <datetime> - <datetime> (interval)",
        Classifier{okData =
                     ClassData{prior = -1.0116009116784799,
                               unseen = -3.6375861597263857,
                               likelihoods =
                                 HashMap.fromList
                                   [("minuteminute", -2.001480000210124),
                                    ("<day-of-month> (ordinal)<day-of-month> (ordinal)",
                                     -2.917770732084279),
                                    ("hh:mmhh:mm", -2.001480000210124),
                                    ("dayday", -2.512305623976115),
                                    ("<named-month>|<named-day> <day-of-month> (ordinal)<day-of-month> (ordinal)",
                                     -2.917770732084279),
                                    ("<time-of-day> am|pmtime-of-day (latent)", -2.917770732084279),
                                    ("hourhour", -2.512305623976115),
                                    ("<time-of-day> am|pm<time-of-day> am|pm", -2.917770732084279)],
                               n = 8},
                   koData =
                     ClassData{prior = -0.45198512374305727,
                               unseen = -3.912023005428146,
                               likelihoods =
                                 HashMap.fromList
                                   [("hourday", -3.1986731175506815),
                                    ("dayhour", -2.793208009442517),
                                    ("<day-of-month> (ordinal)time-of-day (latent)",
                                     -3.1986731175506815),
                                    ("<named-month>|<named-day> <day-of-month> (ordinal)year (latent)",
                                     -3.1986731175506815),
                                    ("hh:mmtime-of-day (latent)", -2.2823823856765264),
                                    ("minuteminute", -2.793208009442517),
                                    ("time-of-day (latent)time-of-day (latent)",
                                     -2.793208009442517),
                                    ("dayday", -3.1986731175506815),
                                    ("hourhour", -2.505525936990736),
                                    ("dayyear", -3.1986731175506815),
                                    ("minutehour", -2.2823823856765264),
                                    ("hh:mmintersect", -2.793208009442517),
                                    ("<day-of-month> (ordinal)<day-of-month> (ordinal or number) <named-month>",
                                     -3.1986731175506815),
                                    ("time-of-day (latent)<time-of-day> am|pm",
                                     -3.1986731175506815),
                                    ("time-of-day (latent)<day-of-month> (ordinal or number) <named-month>",
                                     -3.1986731175506815),
                                    ("<named-month> <day-of-month> (non ordinal)time-of-day (latent)",
                                     -3.1986731175506815)],
                               n = 14}}),
       ("Saturday",
        Classifier{okData =
                     ClassData{prior = -0.15415067982725836,
                               unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 6},
                   koData =
                     ClassData{prior = -1.9459101490553135,
                               unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1}}),
       ("the <cycle> of <time>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.890371757896165,
                               likelihoods =
                                 HashMap.fromList
                                   [("week (grain)<named-month>|<named-day> <day-of-month> (ordinal)",
                                     -1.7346010553881064),
                                    ("weekmonth", -1.7346010553881064),
                                    ("week (grain)October", -1.7346010553881064),
                                    ("week (grain)<named-month> <day-of-month> (non ordinal)",
                                     -1.7346010553881064),
                                    ("weekday", -1.2237754316221157)],
                               n = 6},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("number.number hours",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("from <time-of-day> - <time-of-day> (interval)",
        Classifier{okData =
                     ClassData{prior = -0.6931471805599453,
                               unseen = -3.4339872044851463,
                               likelihoods =
                                 HashMap.fromList
                                   [("minuteminute", -1.6094379124341003),
                                    ("hh:mmhh:mm", -1.6094379124341003),
                                    ("<time-of-day> am|pmtime-of-day (latent)", -2.70805020110221),
                                    ("hourhour", -2.3025850929940455),
                                    ("hourminute", -2.3025850929940455),
                                    ("time-of-day (latent)<time-of-day> sharp|exactly",
                                     -2.70805020110221),
                                    ("time-of-day (latent)hh:mm", -2.70805020110221),
                                    ("<time-of-day> am|pm<time-of-day> am|pm", -2.70805020110221)],
                               n = 9},
                   koData =
                     ClassData{prior = -0.6931471805599453,
                               unseen = -3.4339872044851463,
                               likelihoods =
                                 HashMap.fromList
                                   [("hh:mmtime-of-day (latent)", -1.6094379124341003),
                                    ("time-of-day (latent)time-of-day (latent)",
                                     -2.0149030205422647),
                                    ("hourhour", -1.791759469228055),
                                    ("minutehour", -1.6094379124341003),
                                    ("time-of-day (latent)<time-of-day> am|pm", -2.70805020110221)],
                               n = 9}}),
       ("integer 21..99",
        Classifier{okData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0},
                   koData =
                     ClassData{prior = 0.0, unseen = -1.9459101490553135,
                               likelihoods =
                                 HashMap.fromList
                                   [("integer (numeric)integer (numeric)", -0.6931471805599453),
                                    ("integer (20..90)integer (0..19)", -0.6931471805599453)],
                               n = 4}}),
       ("Global Youth Service Day",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Tisha B'Av",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("yyyy-mm-dd",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("year (latent)",
        Classifier{okData =
                     ClassData{prior = -0.1431008436406733, unseen = -5.081404364984463,
                               likelihoods =
                                 HashMap.fromList
                                   [("integer (numeric)", -3.822121282019774e-2),
                                    ("intersect 2 numbers", -3.6888794541139363)],
                               n = 156},
                   koData =
                     ClassData{prior = -2.0149030205422647, unseen = -3.367295829986474,
                               likelihoods =
                                 HashMap.fromList
                                   [("integer (numeric)", -1.1349799328389845),
                                    ("negative numbers", -0.6931471805599453),
                                    ("compose by multiplication", -1.9459101490553135)],
                               n = 24}}),
       ("mm/dd/yyyy",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 6},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Civic Holiday",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 6},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<time> for <duration>",
        Classifier{okData =
                     ClassData{prior = -0.40546510810816444, unseen = -2.70805020110221,
                               likelihoods =
                                 HashMap.fromList
                                   [("dayday", -1.0296194171811581),
                                    ("intersect<integer> <unit-of-duration>", -1.9459101490553135),
                                    ("<day-of-month> (ordinal or number) <named-month><integer> <unit-of-duration>",
                                     -1.540445040947149),
                                    ("from|since|after <time><integer> <unit-of-duration>",
                                     -1.9459101490553135)],
                               n = 4},
                   koData =
                     ClassData{prior = -1.0986122886681098,
                               unseen = -2.3978952727983707,
                               likelihoods =
                                 HashMap.fromList
                                   [("monthday", -1.2039728043259361),
                                    ("December<integer> <unit-of-duration>", -1.2039728043259361)],
                               n = 2}}),
       ("Memorial Day",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 4},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Monday",
        Classifier{okData =
                     ClassData{prior = -0.3483066942682157, unseen = -2.639057329615259,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 12},
                   koData =
                     ClassData{prior = -1.2237754316221157,
                               unseen = -1.9459101490553135,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 5}}),
       ("yesterday",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.9459101490553135,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 5},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<ordinal> quarter <year>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.9459101490553135,
                               likelihoods =
                                 HashMap.fromList
                                   [("ordinal (digits)quarter (grain)year (latent)",
                                     -0.6931471805599453),
                                    ("quarteryear", -0.6931471805599453)],
                               n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("hh:mm:ss",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Hanukkah",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<hour-of-day> <integer>",
        Classifier{okData =
                     ClassData{prior = -0.40546510810816444,
                               unseen = -2.1972245773362196,
                               likelihoods =
                                 HashMap.fromList
                                   [("at <time-of-day>integer (20..90)", -1.3862943611198906),
                                    ("hour", -0.9808292530117262),
                                    ("at <time-of-day>integer (numeric)", -1.3862943611198906)],
                               n = 2},
                   koData =
                     ClassData{prior = -1.0986122886681098,
                               unseen = -1.9459101490553135,
                               likelihoods =
                                 HashMap.fromList
                                   [("about|exactly <time-of-day>integer (numeric)",
                                     -1.0986122886681098),
                                    ("hour", -1.0986122886681098)],
                               n = 1}}),
       ("Labour Day",
        Classifier{okData =
                     ClassData{prior = -0.2876820724517809,
                               unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -1.3862943611198906,
                               unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1}}),
       ("nth <time> of <time>",
        Classifier{okData =
                     ClassData{prior = -0.4700036292457356, unseen = -2.833213344056216,
                               likelihoods =
                                 HashMap.fromList
                                   [("daymonth", -0.9808292530117262),
                                    ("ordinals (first..twentieth,thirtieth,...)Tuesdayintersect",
                                     -2.0794415416798357),
                                    ("ordinals (first..twentieth,thirtieth,...)Wednesdayintersect",
                                     -1.6739764335716716),
                                    ("ordinals (first..twentieth,thirtieth,...)TuesdayOctober",
                                     -1.6739764335716716)],
                               n = 5},
                   koData =
                     ClassData{prior = -0.9808292530117262,
                               unseen = -2.5649493574615367,
                               likelihoods =
                                 HashMap.fromList
                                   [("daymonth", -1.0986122886681098),
                                    ("ordinals (first..twentieth,thirtieth,...)TuesdaySeptember",
                                     -1.791759469228055),
                                    ("ordinals (first..twentieth,thirtieth,...)WednesdayOctober",
                                     -1.3862943611198906)],
                               n = 3}}),
       ("half a <time-grain>",
        Classifier{okData =
                     ClassData{prior = -0.1823215567939546,
                               unseen = -2.5649493574615367,
                               likelihoods =
                                 HashMap.fromList
                                   [("hour (grain)", -0.6931471805599453),
                                    ("hour", -0.6931471805599453)],
                               n = 5},
                   koData =
                     ClassData{prior = -1.791759469228055, unseen = -1.6094379124341003,
                               likelihoods =
                                 HashMap.fromList
                                   [("hour (grain)", -0.6931471805599453),
                                    ("hour", -0.6931471805599453)],
                               n = 1}}),
       ("Valentine's Day",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("April",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.9459101490553135,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 5},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Maha Saptami",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Discovery Day",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 4},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("end of month",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.4849066497880004,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 10},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("week (grain)",
        Classifier{okData =
                     ClassData{prior = -3.822121282019774e-2,
                               unseen = -4.3694478524670215,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 77},
                   koData =
                     ClassData{prior = -3.283414346005772, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3}}),
       ("<part-of-day> of <time>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -3.0910424533583156,
                               likelihoods =
                                 HashMap.fromList
                                   [("part of daysintersect by \",\", \"of\", \"from\", \"'s\"",
                                     -2.3513752571634776),
                                    ("part of daysintersect", -2.3513752571634776),
                                    ("hourday", -0.9650808960435872),
                                    ("part of daysthe <day-of-month> (ordinal)",
                                     -2.3513752571634776),
                                    ("part of daysthe <day-of-month> (number)",
                                     -2.3513752571634776),
                                    ("part of daysthis <time>", -2.3513752571634776),
                                    ("part of daysChristmas", -1.9459101490553135)],
                               n = 7},
                   koData =
                     ClassData{prior = -infinity, unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("from <time> for <duration>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods =
                                 HashMap.fromList
                                   [("dayday", -0.6931471805599453),
                                    ("<day-of-month> (ordinal or number) <named-month><integer> <unit-of-duration>",
                                     -0.6931471805599453)],
                               n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("six thirty six a.m.",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.0794415416798357,
                               likelihoods =
                                 HashMap.fromList
                                   [("integer (numeric)", -1.252762968495368),
                                    ("one twenty two", -0.8472978603872037),
                                    ("one eleven", -1.252762968495368)],
                               n = 4},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Shrove Tuesday",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("now",
        Classifier{okData =
                     ClassData{prior = -0.15415067982725836,
                               unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 6},
                   koData =
                     ClassData{prior = -1.9459101490553135,
                               unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1}}),
       ("<day-of-month> (ordinal or number) of <named-month>",
        Classifier{okData =
                     ClassData{prior = -0.13353139262452263,
                               unseen = -3.0910424533583156,
                               likelihoods =
                                 HashMap.fromList
                                   [("ordinal (digits)July", -2.3513752571634776),
                                    ("ordinals (first..twentieth,thirtieth,...)March",
                                     -2.3513752571634776),
                                    ("ordinal (digits)February", -2.3513752571634776),
                                    ("integer (numeric)February", -1.9459101490553135),
                                    ("month", -0.9650808960435872),
                                    ("ordinal (digits)March", -2.3513752571634776),
                                    ("integer (numeric)July", -2.3513752571634776)],
                               n = 7},
                   koData =
                     ClassData{prior = -2.0794415416798357,
                               unseen = -2.3025850929940455,
                               likelihoods =
                                 HashMap.fromList
                                   [("ordinal (digits)February", -1.5040773967762742),
                                    ("month", -1.5040773967762742)],
                               n = 1}}),
       ("this <part-of-day>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.1972245773362196,
                               likelihoods =
                                 HashMap.fromList
                                   [("hour", -0.6931471805599453),
                                    ("part of days", -0.6931471805599453)],
                               n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Kaanum Pongal",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Yom Kippur",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("The Twelfth",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("powers of tens",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Friday",
        Classifier{okData =
                     ClassData{prior = -0.3677247801253174,
                               unseen = -2.3978952727983707,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 9},
                   koData =
                     ClassData{prior = -1.1786549963416462, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 4}}),
       ("in|during the <part-of-day>",
        Classifier{okData =
                     ClassData{prior = -8.701137698962981e-2,
                               unseen = -3.258096538021482,
                               likelihoods =
                                 HashMap.fromList
                                   [("early morning", -2.5257286443082556),
                                    ("hour", -0.7339691750802004),
                                    ("part of days", -0.8209805520698302)],
                               n = 11},
                   koData =
                     ClassData{prior = -2.4849066497880004, unseen = -1.791759469228055,
                               likelihoods =
                                 HashMap.fromList
                                   [("hour", -0.916290731874155),
                                    ("part of days", -0.916290731874155)],
                               n = 1}}),
       ("tomorrow",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.9444389791664407,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 17},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("hh(:mm) - <time-of-day> am|pm",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.70805020110221,
                               likelihoods =
                                 HashMap.fromList
                                   [("time-of-day (latent)", -0.6931471805599453),
                                    ("hour", -0.6931471805599453)],
                               n = 6},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Groundhog Day",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("this|last|next <cycle>",
        Classifier{okData =
                     ClassData{prior = -0.15600424847658126, unseen = -5.10594547390058,
                               likelihoods =
                                 HashMap.fromList
                                   [("week", -1.1295745142720766),
                                    ("month (grain)", -2.797281334830153),
                                    ("year (grain)", -2.5349170703626616),
                                    ("week (grain)", -1.1295745142720766),
                                    ("quarter", -3.4904285153900982), ("year", -2.5349170703626616),
                                    ("month", -2.797281334830153),
                                    ("quarter (grain)", -3.4904285153900982)],
                               n = 77},
                   koData =
                     ClassData{prior = -1.9348603128687285,
                               unseen = -3.6109179126442243,
                               likelihoods =
                                 HashMap.fromList
                                   [("week", -1.2809338454620642),
                                    ("week (grain)", -1.2809338454620642),
                                    ("day", -1.9740810260220096),
                                    ("day (grain)", -1.9740810260220096)],
                               n = 13}}),
       ("Mother's Day",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 4},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Simchat Torah",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Victoria Day",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("New Year's Eve",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("the <ordinal> <cycle> of <time>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods =
                                 HashMap.fromList
                                   [("ordinal (digits)quarter (grain)year (latent)",
                                     -0.6931471805599453),
                                    ("quarteryear", -0.6931471805599453)],
                               n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Raksha Bandhan",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Ashura",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Palm Sunday",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Eid al-Adha",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 4},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("by <time>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.70805020110221,
                               likelihoods =
                                 HashMap.fromList
                                   [("noon|midnight|EOD|end of day", -1.9459101490553135),
                                    ("time-of-day (latent)", -1.9459101490553135),
                                    ("<time-of-day> am|pm", -1.9459101490553135),
                                    ("hh:mm", -1.9459101490553135), ("hour", -1.540445040947149),
                                    ("minute", -1.540445040947149)],
                               n = 4},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.9459101490553135,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("the <day-of-month> (ordinal)",
        Classifier{okData =
                     ClassData{prior = -0.5753641449035618,
                               unseen = -2.4849066497880004,
                               likelihoods =
                                 HashMap.fromList
                                   [("ordinals (first..twentieth,thirtieth,...)",
                                     -1.7047480922384253),
                                    ("ordinal (digits)", -0.2006706954621511)],
                               n = 9},
                   koData =
                     ClassData{prior = -0.8266785731844679,
                               unseen = -2.3025850929940455,
                               likelihoods =
                                 HashMap.fromList
                                   [("ordinals (first..twentieth,thirtieth,...)",
                                     -0.8109302162163288),
                                    ("ordinal (digits)", -0.587786664902119)],
                               n = 7}}),
       ("last weekend of <named-month>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.639057329615259,
                               likelihoods =
                                 HashMap.fromList
                                   [("October", -0.9555114450274363), ("July", -1.8718021769015913),
                                    ("month", -0.7731898882334817)],
                               n = 5},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("the <day-of-month> (number)",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("integer (numeric)", 0.0)],
                               n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Lag BaOmer",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("fractional number",
        Classifier{okData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0},
                   koData =
                     ClassData{prior = 0.0, unseen = -2.9444389791664407,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 17}}),
       ("Sunday",
        Classifier{okData =
                     ClassData{prior = -0.262364264467491, unseen = -2.4849066497880004,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 10},
                   koData =
                     ClassData{prior = -1.466337068793427, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3}}),
       ("Chinese New Year",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.9459101490553135,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 5},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("February",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.70805020110221,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 13},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("minute (grain)",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.833213344056216,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 15},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("last|this|next <season>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 6},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("the <ordinal> quarter",
        Classifier{okData =
                     ClassData{prior = -0.6931471805599453,
                               unseen = -1.6094379124341003,
                               likelihoods =
                                 HashMap.fromList
                                   [("ordinal (digits)quarter (grain)", -0.6931471805599453),
                                    ("quarter", -0.6931471805599453)],
                               n = 1},
                   koData =
                     ClassData{prior = -0.6931471805599453,
                               unseen = -1.6094379124341003,
                               likelihoods =
                                 HashMap.fromList
                                   [("ordinal (digits)quarter (grain)", -0.6931471805599453),
                                    ("quarter", -0.6931471805599453)],
                               n = 1}}),
       ("time-of-day (latent)",
        Classifier{okData =
                     ClassData{prior = -0.635159922909596, unseen = -4.31748811353631,
                               likelihoods =
                                 HashMap.fromList
                                   [("integer (numeric)", -0.11441035117774422),
                                    ("integer (0..19)", -2.3581549441488563)],
                               n = 71},
                   koData =
                     ClassData{prior = -0.7547050735593787, unseen = -4.204692619390966,
                               likelihoods =
                                 HashMap.fromList
                                   [("integer (numeric)", -7.878087785311434e-2),
                                    ("integer (0..19)", -3.0910424533583156),
                                    ("integer 21..99", -3.4965075614664802)],
                               n = 63}}),
       ("beginning of year",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 4},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("last <day-of-week> of <time>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.3978952727983707,
                               likelihoods =
                                 HashMap.fromList
                                   [("daymonth", -0.916290731874155),
                                    ("SundayMarch", -1.6094379124341003),
                                    ("MondayMarch", -1.6094379124341003),
                                    ("Sundayintersect", -1.6094379124341003)],
                               n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<integer> <unit-of-duration>",
        Classifier{okData =
                     ClassData{prior = -0.13353139262452263,
                               unseen = -5.181783550292085,
                               likelihoods =
                                 HashMap.fromList
                                   [("week", -2.5370924029585704),
                                    ("integer (0..19)year (grain)", -2.9789251552376097),
                                    ("integer (numeric)day (grain)", -2.6112003751122925),
                                    ("integer (0..19)second (grain) ", -3.7898553714539385),
                                    ("integer (0..19)hour (grain)", -3.096708190893993),
                                    ("second", -3.3843902633457743),
                                    ("integer (numeric)second (grain) ", -4.07753744390572),
                                    ("integer (numeric)year (grain)", -3.3843902633457743),
                                    ("day", -2.342936388517613), ("year", -2.5370924029585704),
                                    ("integer (numeric)week (grain)", -3.096708190893993),
                                    ("integer (0..19)month (grain)", -3.5667118201397288),
                                    ("hour", -2.691243082785829), ("month", -3.230239583518516),
                                    ("integer (numeric)minute (grain)", -3.230239583518516),
                                    ("integer (0..19)minute (grain)", -3.096708190893993),
                                    ("integer (numeric)month (grain)", -4.07753744390572),
                                    ("minute", -2.5370924029585704),
                                    ("integer (numeric)hour (grain)", -3.5667118201397288),
                                    ("integer (0..19)day (grain)", -3.5667118201397288),
                                    ("integer (0..19)week (grain)", -3.230239583518516)],
                               n = 77},
                   koData =
                     ClassData{prior = -2.0794415416798357, unseen = -3.828641396489095,
                               likelihoods =
                                 HashMap.fromList
                                   [("quarter", -3.1135153092103742), ("hour", -1.4087672169719492),
                                    ("integer (numeric)hour (grain)", -1.4087672169719492),
                                    ("integer (0..19)quarter (grain)", -3.1135153092103742)],
                               n = 11}}),
       ("hhmm (latent)",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 6},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<time-of-day> am|pm",
        Classifier{okData =
                     ClassData{prior = -0.2546422183735807, unseen = -5.37989735354046,
                               likelihoods =
                                 HashMap.fromList
                                   [("from|since|after <time>", -3.765840495250065),
                                    ("integer after|past <hour-of-day>", -3.9889840465642745),
                                    ("at <time-of-day>", -2.1564025828159643),
                                    ("<time-of-day> o'clock", -4.276666119016055),
                                    ("half after|past <hour-of-day>", -4.276666119016055),
                                    ("time-of-day (latent)", -1.7117167615545186),
                                    ("hhmm (latent)", -4.68213122712422),
                                    ("hh:mm", -2.330755969960742),
                                    ("quarter after|past <hour-of-day>", -4.68213122712422),
                                    ("until <time>", -3.9889840465642745),
                                    ("about|exactly <time-of-day>", -4.68213122712422),
                                    ("hour", -1.1856236656577395),
                                    ("<time-of-day> sharp|exactly", -4.68213122712422),
                                    ("minute", -1.791759469228055)],
                               n = 100},
                   koData =
                     ClassData{prior = -1.492516574375198, unseen = -4.31748811353631,
                               likelihoods =
                                 HashMap.fromList
                                   [("<integer> to|till|before <hour-of-day>", -3.20545280453606),
                                    ("from|since|after <time>", -3.20545280453606),
                                    ("<hour-of-day> <integer>", -3.6109179126442243),
                                    ("time-of-day (latent)", -1.085189268335969),
                                    ("hour", -1.0459685551826876), ("minute", -2.6946271807700692)],
                               n = 29}}),
       ("Yom Ha'atzmaut",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("from <day-of-month> (ordinal or number) to <day-of-month> (ordinal or number) <named-month> (interval)",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.0794415416798357,
                               likelihoods =
                                 HashMap.fromList
                                   [("ordinal (digits)ordinal (digits)July", -1.252762968495368),
                                    ("integer (numeric)integer (numeric)July", -1.252762968495368),
                                    ("month", -0.8472978603872037)],
                               n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Thiru Onam",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Thai Pongal",
        Classifier{okData =
                     ClassData{prior = -0.5596157879354228, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 4},
                   koData =
                     ClassData{prior = -0.8472978603872037,
                               unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3}}),
       ("Vijayadashami",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Administrative Professionals' Day",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Thanksgiving Day",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.5649493574615367,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 11},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("part of <named-month>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.1972245773362196,
                               likelihoods =
                                 HashMap.fromList
                                   [("March", -0.6931471805599453), ("month", -0.6931471805599453)],
                               n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("a <unit-of-duration>",
        Classifier{okData =
                     ClassData{prior = -0.5306282510621704,
                               unseen = -3.5553480614894135,
                               likelihoods =
                                 HashMap.fromList
                                   [("week", -2.1400661634962708),
                                    ("year (grain)", -2.4277482359480516),
                                    ("second", -2.833213344056216),
                                    ("week (grain)", -2.1400661634962708),
                                    ("day", -2.1400661634962708),
                                    ("minute (grain)", -2.833213344056216),
                                    ("year", -2.4277482359480516),
                                    ("second (grain) ", -2.833213344056216),
                                    ("minute", -2.833213344056216),
                                    ("day (grain)", -2.1400661634962708)],
                               n = 10},
                   koData =
                     ClassData{prior = -0.8873031950009028, unseen = -3.367295829986474,
                               likelihoods =
                                 HashMap.fromList
                                   [("hour (grain)", -1.7227665977411035),
                                    ("quarter", -1.9459101490553135), ("hour", -1.7227665977411035),
                                    ("quarter (grain)", -1.9459101490553135)],
                               n = 7}}),
       ("at the beginning|end of <year>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.3978952727983707,
                               likelihoods =
                                 HashMap.fromList
                                   [("year (latent)", -0.6931471805599453),
                                    ("year", -0.6931471805599453)],
                               n = 4},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Dhanteras",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Tu BiShvat",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Whit Monday",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("hh:mm",
        Classifier{okData =
                     ClassData{prior = -5.6352936551131744e-2,
                               unseen = -4.2626798770413155,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 69},
                   koData =
                     ClassData{prior = -2.9041650800285006, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 4}}),
       ("Holi",
        Classifier{okData =
                     ClassData{prior = -0.2876820724517809,
                               unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -1.3862943611198906,
                               unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1}}),
       ("Rosh Hashanah",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<integer> <named-day> ago|back",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.9459101490553135,
                               likelihoods =
                                 HashMap.fromList
                                   [("integer (numeric)Thursday", -0.6931471805599453),
                                    ("day", -0.6931471805599453)],
                               n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Holika Dahan",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("quarter of an hour",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 4},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("second (grain) ",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 6},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("ordinals (first..twentieth,thirtieth,...)",
        Classifier{okData =
                     ClassData{prior = -0.15415067982725836,
                               unseen = -2.995732273553991,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 18},
                   koData =
                     ClassData{prior = -1.9459101490553135,
                               unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3}}),
       ("Mawlid",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Jumu'atul-Wida",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 4},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("quarter after|past <hour-of-day>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods =
                                 HashMap.fromList
                                   [("time-of-day (latent)", -0.6931471805599453),
                                    ("hour", -0.6931471805599453)],
                               n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("until <time>",
        Classifier{okData =
                     ClassData{prior = -1.1786549963416462, unseen = -3.295836866004329,
                               likelihoods =
                                 HashMap.fromList
                                   [("year (latent)", -2.159484249353372),
                                    ("time-of-day (latent)", -2.5649493574615367),
                                    ("year", -2.159484249353372),
                                    ("<time-of-day> am|pm", -1.8718021769015913),
                                    ("hh:mm", -2.159484249353372), ("hour", -2.159484249353372),
                                    ("minute", -1.6486586255873816)],
                               n = 8},
                   koData =
                     ClassData{prior = -0.3677247801253174,
                               unseen = -3.8501476017100584,
                               likelihoods =
                                 HashMap.fromList
                                   [("intersect", -2.2192034840549946),
                                    ("yesterday", -2.7300291078209855),
                                    ("day", -2.7300291078209855),
                                    ("time-of-day (latent)", -1.6314168191528755),
                                    ("hh:mm", -2.2192034840549946), ("hour", -1.5260563034950494),
                                    ("minute", -1.749199854809259)],
                               n = 18}}),
       ("the <cycle> after|before <time>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.0794415416798357,
                               likelihoods =
                                 HashMap.fromList
                                   [("day (grain)tomorrow", -1.252762968495368),
                                    ("dayday", -0.8472978603872037),
                                    ("day (grain)yesterday", -1.252762968495368)],
                               n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("about|exactly <time-of-day>",
        Classifier{okData =
                     ClassData{prior = -0.15415067982725836,
                               unseen = -3.6109179126442243,
                               likelihoods =
                                 HashMap.fromList
                                   [("week", -1.791759469228055),
                                    ("hh(:mm) - <time-of-day> am|pm", -2.890371757896165),
                                    ("this|last|next <cycle>", -1.791759469228055),
                                    ("day", -2.4849066497880004),
                                    ("time-of-day (latent)", -2.890371757896165),
                                    ("hhmm (latent)", -2.4849066497880004),
                                    ("<time-of-day> am|pm", -2.890371757896165),
                                    ("hour", -2.1972245773362196),
                                    ("next <time>", -2.890371757896165),
                                    ("this|next <day-of-week>", -2.890371757896165),
                                    ("minute", -2.4849066497880004)],
                               n = 12},
                   koData =
                     ClassData{prior = -1.9459101490553135, unseen = -2.833213344056216,
                               likelihoods =
                                 HashMap.fromList
                                   [("mm/dd", -2.0794415416798357), ("day", -2.0794415416798357),
                                    ("time-of-day (latent)", -2.0794415416798357),
                                    ("hour", -2.0794415416798357)],
                               n = 2}}),
       ("Sukkot",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<day> in <duration>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.70805020110221,
                               likelihoods =
                                 HashMap.fromList
                                   [("monthyear", -1.540445040947149),
                                    ("Marcha <unit-of-duration>", -1.9459101490553135),
                                    ("March<integer> <unit-of-duration>", -1.9459101490553135),
                                    ("Vijayadashami<integer> <unit-of-duration>",
                                     -1.9459101490553135),
                                    ("Administrative Professionals' Day<integer> <unit-of-duration>",
                                     -1.9459101490553135),
                                    ("dayyear", -1.540445040947149)],
                               n = 4},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.9459101490553135,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("World Vegan Day",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("intersect by \",\", \"of\", \"from\", \"'s\"",
        Classifier{okData =
                     ClassData{prior = -0.5292593254548287, unseen = -4.969813299576001,
                               likelihoods =
                                 HashMap.fromList
                                   [("Wednesday<named-month> <day-of-month> (non ordinal)",
                                     -4.269697449699962),
                                    ("dayhour", -3.8642323415917974),
                                    ("daymonth", -3.016934481204594),
                                    ("<named-month> <day-of-month> (non ordinal)Friday",
                                     -4.269697449699962),
                                    ("Friday<named-month> <day-of-month> (non ordinal)",
                                     -3.5765502691400166),
                                    ("Wednesdayintersect", -4.269697449699962),
                                    ("Black Fridaythis|last|next <cycle>", -4.269697449699962),
                                    ("Labour Daythis|last|next <cycle>", -4.269697449699962),
                                    ("<part-of-day> of <time>February", -4.269697449699962),
                                    ("Saturday<time-of-day> am|pm", -4.269697449699962),
                                    ("Martin Luther King's Daythis|last|next <cycle>",
                                     -3.8642323415917974),
                                    ("on <date><time-of-day> am|pm", -4.269697449699962),
                                    ("hourmonth", -4.269697449699962),
                                    ("Fridayintersect by \",\", \"of\", \"from\" for year",
                                     -4.269697449699962),
                                    ("dayday", -2.3978952727983707),
                                    ("the <day-of-month> (ordinal)February", -3.8642323415917974),
                                    ("WednesdayOctober", -4.269697449699962),
                                    ("Wednesdaythis|last|next <cycle>", -3.8642323415917974),
                                    ("intersect<named-month> <day-of-month> (non ordinal)",
                                     -3.353406717825807),
                                    ("dayyear", -3.1710851610318525),
                                    ("Saturday<named-month> <day-of-month> (non ordinal)",
                                     -4.269697449699962),
                                    ("Thursdayhh:mm", -3.8642323415917974),
                                    ("Thanksgiving Daythis|last|next <cycle>", -4.269697449699962),
                                    ("on <date><named-month> <day-of-month> (non ordinal)",
                                     -3.8642323415917974),
                                    ("TuesdayOctober", -4.269697449699962),
                                    ("the <day-of-month> (ordinal)March", -4.269697449699962),
                                    ("Mondaythis|last|next <cycle>", -4.269697449699962),
                                    ("Fridayintersect", -4.269697449699962),
                                    ("Thursday<datetime> - <datetime> (interval)",
                                     -3.8642323415917974),
                                    ("Thursday<time-of-day> - <time-of-day> (interval)",
                                     -3.8642323415917974),
                                    ("Tuesdaythis|last|next <cycle>", -4.269697449699962),
                                    ("Sunday<named-month> <day-of-month> (non ordinal)",
                                     -4.269697449699962),
                                    ("dayminute", -2.883403088580071),
                                    ("minuteday", -3.353406717825807),
                                    ("this|last|next <cycle>Sunday", -4.269697449699962),
                                    ("Sundaythis|last|next <cycle>", -4.269697449699962),
                                    ("weekday", -4.269697449699962),
                                    ("dayweek", -3.1710851610318525),
                                    ("Monday<named-month> <day-of-month> (non ordinal)",
                                     -3.8642323415917974)],
                               n = 43},
                   koData =
                     ClassData{prior = -0.8892620594862358, unseen = -4.770684624465665,
                               likelihoods =
                                 HashMap.fromList
                                   [("week-endJuly", -4.069026754237811),
                                    ("week-endOctober", -3.3758795736778655),
                                    ("daymonth", -1.8718021769015913),
                                    ("TuesdaySeptember", -4.069026754237811),
                                    ("Wednesdayintersect", -4.069026754237811),
                                    ("hourmonth", -2.9704144655697013),
                                    ("Fridaythis|last|next <cycle>", -4.069026754237811),
                                    ("SundayFebruary", -4.069026754237811),
                                    ("WednesdayOctober", -4.069026754237811),
                                    ("week-endintersect", -4.069026754237811),
                                    ("dayyear", -4.069026754237811),
                                    ("FridayJuly", -3.6635616461296463),
                                    ("FridaySeptember", -4.069026754237811),
                                    ("WednesdayFebruary", -4.069026754237811),
                                    ("minutemonth", -3.152736022363656),
                                    ("SundayMarch", -4.069026754237811),
                                    ("MondayFebruary", -3.6635616461296463),
                                    ("Fridayintersect", -4.069026754237811),
                                    ("Thursday<time-of-day> - <time-of-day> (interval)",
                                     -3.6635616461296463),
                                    ("dayminute", -3.3758795736778655),
                                    ("SaturdaySeptember", -4.069026754237811),
                                    ("intersectSeptember", -3.152736022363656),
                                    ("MondayMarch", -4.069026754237811),
                                    ("on <date>September", -3.6635616461296463),
                                    ("Tuesdayintersect", -4.069026754237811),
                                    ("Sundayintersect", -4.069026754237811)],
                               n = 30}}),
       ("last <time>",
        Classifier{okData =
                     ClassData{prior = -0.5306282510621704,
                               unseen = -3.4965075614664802,
                               likelihoods =
                                 HashMap.fromList
                                   [("Father's Day", -2.772588722239781),
                                    ("Martin Luther King's Day", -2.772588722239781),
                                    ("Mother's Day", -2.772588722239781),
                                    ("day", -1.1631508098056809), ("Sunday", -2.772588722239781),
                                    ("Chinese New Year", -2.367123614131617),
                                    ("Thanksgiving Day", -2.772588722239781),
                                    ("Easter Sunday", -2.772588722239781),
                                    ("hour", -2.772588722239781), ("Tuesday", -2.772588722239781),
                                    ("week-end", -2.772588722239781)],
                               n = 10},
                   koData =
                     ClassData{prior = -0.8873031950009028, unseen = -3.295836866004329,
                               likelihoods =
                                 HashMap.fromList
                                   [("Monday", -2.5649493574615367), ("day", -2.159484249353372),
                                    ("Sunday", -2.5649493574615367), ("hour", -1.466337068793427),
                                    ("week-end", -1.466337068793427)],
                               n = 7}}),
       ("March",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -3.044522437723423,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 19},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<named-month>|<named-day> <day-of-month> (ordinal)",
        Classifier{okData =
                     ClassData{prior = -0.2231435513142097, unseen = -3.258096538021482,
                               likelihoods =
                                 HashMap.fromList
                                   [("Octoberordinal (digits)", -2.120263536200091),
                                    ("Thursdayordinal (digits)", -2.5257286443082556),
                                    ("day", -2.120263536200091),
                                    ("Augustordinal (digits)", -2.5257286443082556),
                                    ("Marchordinals (first..twentieth,thirtieth,...)",
                                     -2.120263536200091),
                                    ("Tuesdayordinal (digits)", -2.5257286443082556),
                                    ("month", -1.2729656758128873),
                                    ("Marchordinal (digits)", -2.5257286443082556)],
                               n = 8},
                   koData =
                     ClassData{prior = -1.6094379124341003, unseen = -2.639057329615259,
                               likelihoods =
                                 HashMap.fromList
                                   [("from|since|after <time>ordinal (digits)",
                                     -1.8718021769015913),
                                    ("Augustordinal (digits)", -1.8718021769015913),
                                    ("month", -1.466337068793427)],
                               n = 2}}),
       ("Clean Monday",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<day-of-month> (ordinal)",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [("ordinal (digits)", 0.0)], n = 6},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Easter Sunday",
        Classifier{okData =
                     ClassData{prior = -0.2876820724517809,
                               unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 6},
                   koData =
                     ClassData{prior = -1.3862943611198906,
                               unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2}}),
       ("Christmas",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.4849066497880004,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 10},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("mm.dd.yyyy",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Isra and Mi'raj",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 4},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<duration> after|before|from <time>",
        Classifier{okData =
                     ClassData{prior = -0.3184537311185346,
                               unseen = -3.5263605246161616,
                               likelihoods =
                                 HashMap.fromList
                                   [("a <unit-of-duration>now", -2.803360380906535),
                                    ("a <unit-of-duration>Christmas", -2.803360380906535),
                                    ("dayday", -2.803360380906535),
                                    ("<integer> <unit-of-duration>today", -2.803360380906535),
                                    ("daysecond", -2.803360380906535),
                                    ("a <unit-of-duration>right now", -2.803360380906535),
                                    ("minutenograin", -2.803360380906535),
                                    ("<integer> <unit-of-duration>Christmas", -2.803360380906535),
                                    ("<integer> <unit-of-duration>Easter Sunday",
                                     -2.803360380906535),
                                    ("secondnograin", -2.803360380906535),
                                    ("yearday", -2.1102132003465894),
                                    ("daynograin", -2.803360380906535),
                                    ("<integer> <unit-of-duration>now", -2.3978952727983707)],
                               n = 8},
                   koData =
                     ClassData{prior = -1.2992829841302609,
                               unseen = -3.1780538303479458,
                               likelihoods =
                                 HashMap.fromList
                                   [("dayhour", -2.4423470353692043),
                                    ("<integer> <unit-of-duration><day-of-month> (ordinal)",
                                     -2.4423470353692043),
                                    ("dayday", -2.03688192726104),
                                    ("<integer> <unit-of-duration>time-of-day (latent)",
                                     -2.4423470353692043),
                                    ("<integer> <unit-of-duration><day-of-month> (ordinal or number) <named-month>",
                                     -2.4423470353692043)],
                               n = 3}}),
       ("<day-of-month> (ordinal or number) of <month>",
        Classifier{okData =
                     ClassData{prior = -8.004270767353637e-2,
                               unseen = -3.5263605246161616,
                               likelihoods =
                                 HashMap.fromList
                                   [("ordinal (digits)July", -2.803360380906535),
                                    ("ordinals (first..twentieth,thirtieth,...)March",
                                     -2.803360380906535),
                                    ("ordinal (digits)this|last|next <cycle>", -2.1102132003465894),
                                    ("integer (numeric)this|last|next <cycle>",
                                     -2.3978952727983707),
                                    ("ordinal (digits)February", -2.803360380906535),
                                    ("integer (numeric)February", -2.3978952727983707),
                                    ("month", -0.9315582040049435),
                                    ("ordinal (digits)March", -2.803360380906535),
                                    ("integer (numeric)July", -2.803360380906535)],
                               n = 12},
                   koData =
                     ClassData{prior = -2.5649493574615367,
                               unseen = -2.4849066497880004,
                               likelihoods =
                                 HashMap.fromList
                                   [("ordinal (digits)February", -1.7047480922384253),
                                    ("month", -1.7047480922384253)],
                               n = 1}}),
       ("decimal number",
        Classifier{okData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0},
                   koData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3}}),
       ("Labour Day weekend",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Naraka Chaturdashi",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("beginning of month",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 6},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("next <time>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -3.6888794541139363,
                               likelihoods =
                                 HashMap.fromList
                                   [("Martin Luther King's Day", -2.9704144655697013),
                                    ("Halloween", -2.9704144655697013),
                                    ("Wednesday", -2.9704144655697013),
                                    ("Boss's Day", -2.9704144655697013),
                                    ("Memorial Day", -2.9704144655697013),
                                    ("Monday", -2.9704144655697013),
                                    ("Discovery Day", -2.9704144655697013),
                                    ("Mother's Day", -2.9704144655697013),
                                    ("day", -1.0986122886681098),
                                    ("Thanksgiving Day", -2.9704144655697013),
                                    ("March", -2.9704144655697013), ("month", -2.9704144655697013),
                                    ("Tuesday", -2.277267285009756)],
                               n = 13},
                   koData =
                     ClassData{prior = -infinity, unseen = -2.639057329615259,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<time-of-day> sharp|exactly",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.890371757896165,
                               likelihoods =
                                 HashMap.fromList
                                   [("at <time-of-day>", -2.1400661634962708),
                                    ("time-of-day (latent)", -2.1400661634962708),
                                    ("hhmm (latent)", -2.1400661634962708),
                                    ("<time-of-day> am|pm", -2.1400661634962708),
                                    ("hh:mm", -2.1400661634962708), ("hour", -1.7346010553881064),
                                    ("minute", -1.4469189829363254)],
                               n = 5},
                   koData =
                     ClassData{prior = -infinity, unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("in <named-month>|year",
        Classifier{okData =
                     ClassData{prior = -0.2719337154836418,
                               unseen = -3.6635616461296463,
                               likelihoods =
                                 HashMap.fromList
                                   [("<year> (bc|ad)", -1.845826690498331),
                                    ("October", -2.9444389791664407),
                                    ("year (latent)", -1.3350010667323402),
                                    ("year", -0.9295359586241757), ("March", -2.9444389791664407),
                                    ("month", -2.538973871058276)],
                               n = 16},
                   koData =
                     ClassData{prior = -1.4350845252893227, unseen = -2.833213344056216,
                               likelihoods =
                                 HashMap.fromList
                                   [("October", -1.6739764335716716),
                                    ("year (latent)", -1.3862943611198906),
                                    ("year", -1.3862943611198906), ("month", -1.6739764335716716)],
                               n = 5}}),
       ("Islamic New Year",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Lent",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("negative numbers",
        Classifier{okData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0},
                   koData =
                     ClassData{prior = 0.0, unseen = -3.332204510175204,
                               likelihoods =
                                 HashMap.fromList
                                   [("integer (numeric)", -7.696104113612832e-2),
                                    ("integer (0..19)", -2.6026896854443837)],
                               n = 25}}),
       ("about|exactly <duration>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods =
                                 HashMap.fromList
                                   [("half a <time-grain>", -0.6931471805599453),
                                    ("minute", -0.6931471805599453)],
                               n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<time> before last|after next",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.639057329615259,
                               likelihoods =
                                 HashMap.fromList
                                   [("Wednesday", -1.8718021769015913),
                                    ("Friday", -1.466337068793427), ("day", -1.1786549963416462),
                                    ("March", -1.8718021769015913), ("month", -1.8718021769015913)],
                               n = 4},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("by the end of <time>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods =
                                 HashMap.fromList
                                   [("this|last|next <cycle>", -0.6931471805599453),
                                    ("month", -0.6931471805599453)],
                               n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("half an hour (abbrev).",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("hhmm (military) am|pm",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<datetime> - <datetime> (interval)",
        Classifier{okData =
                     ClassData{prior = -0.5596157879354228, unseen = -4.127134385045092,
                               likelihoods =
                                 HashMap.fromList
                                   [("intersecthh:mm", -3.012261575505202),
                                    ("from|since|after <time>hh:mm", -2.501435951739211),
                                    ("minuteminute", -1.2776605201170952),
                                    ("hh:mmhh:mm", -1.9136492868370918),
                                    ("dayday", -3.012261575505202),
                                    ("hourhour", -3.012261575505202),
                                    ("<named-month> <day-of-month> (non ordinal)<named-month> <day-of-month> (non ordinal)",
                                     -3.012261575505202),
                                    ("intersect by \",\", \"of\", \"from\", \"'s\"hh:mm",
                                     -3.012261575505202),
                                    ("<time-of-day> am|pm<time-of-day> am|pm", -3.012261575505202)],
                               n = 20},
                   koData =
                     ClassData{prior = -0.8472978603872037, unseen = -3.951243718581427,
                               likelihoods =
                                 HashMap.fromList
                                   [("hourday", -3.2386784521643803),
                                    ("<named-month> <day-of-month> (non ordinal)July",
                                     -3.2386784521643803),
                                    ("daymonth", -2.833213344056216),
                                    ("<time-of-day> am|pmintersect", -3.2386784521643803),
                                    ("hh:mm<time-of-day> am|pm", -2.833213344056216),
                                    ("minuteminute", -1.9859154836690123),
                                    ("from|since|after <time><time-of-day> am|pm",
                                     -3.2386784521643803),
                                    ("dayday", -3.2386784521643803),
                                    ("from|since|after <time><day-of-month> (ordinal or number) <named-month>",
                                     -2.833213344056216),
                                    ("hourhour", -2.5455312716044354),
                                    ("minutehour", -2.833213344056216),
                                    ("hh:mmintersect", -2.322387720290225),
                                    ("<named-month> <day-of-month> (non ordinal)August",
                                     -3.2386784521643803),
                                    ("about|exactly <time-of-day><time-of-day> am|pm",
                                     -3.2386784521643803),
                                    ("from|since|after <time>intersect", -2.833213344056216)],
                               n = 15}}),
       ("Tuesday",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.639057329615259,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 12},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("New Year's Day",
        Classifier{okData =
                     ClassData{prior = -1.6094379124341003,
                               unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -0.2231435513142097,
                               unseen = -2.3025850929940455,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 8}}),
       ("fortnight",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<integer> and an half hour",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("integer (numeric)", 0.0)],
                               n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("National Patriots' Day",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Laylat al-Qadr",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 4},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Boghi",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("at the beginning|end of <named-month>",
        Classifier{okData =
                     ClassData{prior = -0.2231435513142097,
                               unseen = -2.5649493574615367,
                               likelihoods =
                                 HashMap.fromList
                                   [("January", -1.3862943611198906),
                                    ("April", -1.3862943611198906), ("month", -0.8754687373538999)],
                               n = 4},
                   koData =
                     ClassData{prior = -1.6094379124341003,
                               unseen = -1.9459101490553135,
                               likelihoods =
                                 HashMap.fromList
                                   [("October", -1.0986122886681098),
                                    ("month", -1.0986122886681098)],
                               n = 1}}),
       ("<time-of-day> - <time-of-day> (interval)",
        Classifier{okData =
                     ClassData{prior = -1.0296194171811581, unseen = -4.110873864173311,
                               likelihoods =
                                 HashMap.fromList
                                   [("from|since|after <time>hh:mm", -2.4849066497880004),
                                    ("minuteminute", -1.529395204760564),
                                    ("from|since|after <time><time-of-day> am|pm",
                                     -3.4011973816621555),
                                    ("hh:mmhh:mm", -1.8971199848858813),
                                    ("<time-of-day> am|pmtime-of-day (latent)", -2.70805020110221),
                                    ("hourhour", -1.8971199848858813),
                                    ("from|since|after <time>time-of-day (latent)",
                                     -3.4011973816621555),
                                    ("<time-of-day> am|pm<time-of-day> am|pm", -2.70805020110221)],
                               n = 20},
                   koData =
                     ClassData{prior = -0.4418327522790392, unseen = -4.532599493153256,
                               likelihoods =
                                 HashMap.fromList
                                   [("about|exactly <time-of-day>time-of-day (latent)",
                                     -3.828641396489095),
                                    ("until <time>time-of-day (latent)", -2.575878427993727),
                                    ("hh:mmtime-of-day (latent)", -2.12389330425067),
                                    ("hh:mm<time-of-day> am|pm", -3.4231762883809305),
                                    ("from|since|after <time><time-of-day> am|pm",
                                     -3.828641396489095),
                                    ("<time-of-day> am|pmtime-of-day (latent)", -3.828641396489095),
                                    ("at <time-of-day><time-of-day> am|pm", -3.828641396489095),
                                    ("hourhour", -1.6314168191528755),
                                    ("from|since|after <time><integer> to|till|before <hour-of-day>",
                                     -3.828641396489095),
                                    ("hourminute", -3.828641396489095),
                                    ("minutehour", -1.5773495978825998),
                                    ("until <time><time-of-day> am|pm", -3.4231762883809305),
                                    ("about|exactly <time-of-day><time-of-day> am|pm",
                                     -3.828641396489095),
                                    ("from|since|after <time>time-of-day (latent)",
                                     -2.575878427993727),
                                    ("at <time-of-day>time-of-day (latent)", -3.4231762883809305),
                                    ("<integer> to|till|before <hour-of-day>time-of-day (latent)",
                                     -3.4231762883809305)],
                               n = 36}}),
       ("military spelled out numbers am|pm",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods =
                                 HashMap.fromList [("integer (0..19)integer (20..90)", 0.0)],
                               n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("winter",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("nth <time> after <time>",
        Classifier{okData =
                     ClassData{prior = -0.6931471805599453, unseen = -1.791759469228055,
                               likelihoods =
                                 HashMap.fromList
                                   [("dayday", -0.916290731874155),
                                    ("ordinals (first..twentieth,thirtieth,...)Tuesdayintersect",
                                     -0.916290731874155)],
                               n = 1},
                   koData =
                     ClassData{prior = -0.6931471805599453, unseen = -1.791759469228055,
                               likelihoods =
                                 HashMap.fromList
                                   [("dayday", -0.916290731874155),
                                    ("ordinals (first..twentieth,thirtieth,...)TuesdayChristmas",
                                     -0.916290731874155)],
                               n = 1}}),
       ("<named-month> <day-of-month> (non ordinal)",
        Classifier{okData =
                     ClassData{prior = -0.42121346507630353,
                               unseen = -3.951243718581427,
                               likelihoods =
                                 HashMap.fromList
                                   [("Augustinteger (numeric)", -2.5455312716044354),
                                    ("Marchinteger (numeric)", -2.833213344056216),
                                    ("Aprilinteger (numeric)", -3.2386784521643803),
                                    ("month", -0.8407831793660099),
                                    ("Februaryinteger (numeric)", -1.9859154836690123),
                                    ("Septemberinteger (numeric)", -2.833213344056216),
                                    ("Octoberinteger (numeric)", -2.833213344056216),
                                    ("Julyinteger (numeric)", -2.1400661634962708)],
                               n = 21},
                   koData =
                     ClassData{prior = -1.067840630001356, unseen = -3.4657359027997265,
                               likelihoods =
                                 HashMap.fromList
                                   [("Augustinteger (numeric)", -2.3353749158170367),
                                    ("Marchinteger (numeric)", -2.740840023925201),
                                    ("Aprilinteger (numeric)", -2.740840023925201),
                                    ("month", -0.9490805546971459),
                                    ("from|since|after <time>integer (numeric)",
                                     -2.3353749158170367),
                                    ("Julyinteger (numeric)", -1.6422277352570913)],
                               n = 11}}),
       ("Diwali",
        Classifier{okData =
                     ClassData{prior = -0.2876820724517809,
                               unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -1.3862943611198906,
                               unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1}}),
       ("last night",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("this|next <day-of-week>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.995732273553991,
                               likelihoods =
                                 HashMap.fromList
                                   [("Thursday", -2.2512917986064953),
                                    ("Wednesday", -2.2512917986064953),
                                    ("Monday", -1.845826690498331), ("day", -0.8649974374866046),
                                    ("Tuesday", -1.55814461804655)],
                               n = 7},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("ordinal (digits)",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -3.784189633918261,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 42},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("quarter (grain)",
        Classifier{okData =
                     ClassData{prior = -0.2876820724517809, unseen = -2.639057329615259,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 12},
                   koData =
                     ClassData{prior = -1.3862943611198906, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 4}}),
       ("last <cycle> of <time>",
        Classifier{okData =
                     ClassData{prior = -0.916290731874155, unseen = -3.1354942159291497,
                               likelihoods =
                                 HashMap.fromList
                                   [("day (grain)October", -1.9924301646902063),
                                    ("daymonth", -1.4816045409242156),
                                    ("day (grain)intersect", -1.9924301646902063),
                                    ("weekmonth", -1.9924301646902063),
                                    ("week (grain)intersect", -2.3978952727983707),
                                    ("week (grain)September", -2.3978952727983707)],
                               n = 6},
                   koData =
                     ClassData{prior = -0.5108256237659907, unseen = -3.367295829986474,
                               likelihoods =
                                 HashMap.fromList
                                   [("daymonth", -2.2335922215070942),
                                    ("day (grain)May", -2.2335922215070942),
                                    ("week (grain)year (latent)", -1.9459101490553135),
                                    ("weekmonth", -1.7227665977411035),
                                    ("week (grain)October", -2.2335922215070942),
                                    ("weekyear", -1.9459101490553135),
                                    ("week (grain)intersect", -2.2335922215070942)],
                               n = 9}}),
       ("Chhath",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Vasant Panchami",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("<day-of-month>(ordinal) <named-month> year",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods =
                                 HashMap.fromList
                                   [("ordinal (digits)April", -0.6931471805599453),
                                    ("month", -0.6931471805599453)],
                               n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("the <ordinal> last <cycle> of <time>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.9444389791664407,
                               likelihoods =
                                 HashMap.fromList
                                   [("ordinals (first..twentieth,thirtieth,...)week (grain)year (latent)",
                                     -2.1972245773362196),
                                    ("daymonth", -2.1972245773362196),
                                    ("ordinal (digits)day (grain)May", -2.1972245773362196),
                                    ("ordinals (first..twentieth,thirtieth,...)week (grain)intersect",
                                     -2.1972245773362196),
                                    ("weekmonth", -1.791759469228055),
                                    ("ordinal (digits)week (grain)year (latent)",
                                     -2.1972245773362196),
                                    ("weekyear", -1.791759469228055),
                                    ("ordinals (first..twentieth,thirtieth,...)week (grain)October",
                                     -2.1972245773362196)],
                               n = 5},
                   koData =
                     ClassData{prior = -infinity, unseen = -2.1972245773362196,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Black Friday",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.791759469228055,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 4},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("week-end",
        Classifier{okData =
                     ClassData{prior = -1.3862943611198906,
                               unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -0.2876820724517809,
                               unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 6}}),
       ("Great Lent",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Maundy Thursday",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("day (grain)",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -3.4339872044851463,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 29},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("right now",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("for <duration> from <time>",
        Classifier{okData =
                     ClassData{prior = -0.40546510810816444,
                               unseen = -2.3025850929940455,
                               likelihoods =
                                 HashMap.fromList
                                   [("<integer> <unit-of-duration><day-of-month> (ordinal)",
                                     -1.5040773967762742),
                                    ("dayday", -1.0986122886681098),
                                    ("<integer> <unit-of-duration><day-of-month> (ordinal or number) <named-month>",
                                     -1.5040773967762742)],
                               n = 2},
                   koData =
                     ClassData{prior = -1.0986122886681098,
                               unseen = -2.0794415416798357,
                               likelihoods =
                                 HashMap.fromList
                                   [("dayhour", -1.252762968495368),
                                    ("<integer> <unit-of-duration>time-of-day (latent)",
                                     -1.252762968495368)],
                               n = 1}}),
       ("compose by multiplication",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.6094379124341003,
                               likelihoods =
                                 HashMap.fromList [("integer (0..19)powers of tens", 0.0)],
                               n = 3},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("end of year",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.4849066497880004,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 10},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("between <time> and <time>",
        Classifier{okData =
                     ClassData{prior = -1.0986122886681098,
                               unseen = -3.1780538303479458,
                               likelihoods =
                                 HashMap.fromList
                                   [("minuteminute", -0.832909122935104),
                                    ("hh:mmhh:mm", -0.832909122935104)],
                               n = 9},
                   koData =
                     ClassData{prior = -0.40546510810816444,
                               unseen = -3.7376696182833684,
                               likelihoods =
                                 HashMap.fromList
                                   [("hh:mmtime-of-day (latent)", -1.410986973710262),
                                    ("minuteminute", -1.410986973710262),
                                    ("minutehour", -1.410986973710262),
                                    ("hh:mmintersect", -1.410986973710262)],
                               n = 18}}),
       ("<month> dd-dd (interval)",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -3.4657359027997265,
                               likelihoods =
                                 HashMap.fromList
                                   [("from|since|after <time>integer (numeric)integer (numeric)",
                                     -2.740840023925201),
                                    ("from|since|after <time>ordinal (digits)ordinal (digits)",
                                     -2.740840023925201),
                                    ("Julyinteger (numeric)integer (numeric)", -1.6422277352570913),
                                    ("Augustordinal (digits)integer (numeric)",
                                     -2.3353749158170367),
                                    ("from|since|after <time>ordinal (digits)integer (numeric)",
                                     -2.740840023925201),
                                    ("month", -0.8690378470236094),
                                    ("Augustordinal (digits)ordinal (digits)",
                                     -2.3353749158170367)],
                               n = 12},
                   koData =
                     ClassData{prior = -infinity, unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("intersect by \",\", \"of\", \"from\" for year",
        Classifier{okData =
                     ClassData{prior = -0.10536051565782628,
                               unseen = -3.332204510175204,
                               likelihoods =
                                 HashMap.fromList
                                   [("Black Fridaythis|last|next <cycle>", -2.6026896854443837),
                                    ("Labour Daythis|last|next <cycle>", -2.6026896854443837),
                                    ("Martin Luther King's Daythis|last|next <cycle>",
                                     -2.1972245773362196),
                                    ("intersect by \",\", \"of\", \"from\", \"'s\"year (latent)",
                                     -2.6026896854443837),
                                    ("dayyear", -0.9932517730102834),
                                    ("Thanksgiving Daythis|last|next <cycle>", -2.6026896854443837),
                                    ("intersectyear (latent)", -2.6026896854443837),
                                    ("<named-month> <day-of-month> (non ordinal)year (latent)",
                                     -2.1972245773362196)],
                               n = 9},
                   koData =
                     ClassData{prior = -2.3025850929940455,
                               unseen = -2.4849066497880004,
                               likelihoods =
                                 HashMap.fromList
                                   [("Fridaythis|last|next <cycle>", -1.7047480922384253),
                                    ("dayyear", -1.7047480922384253)],
                               n = 1}}),
       ("part of days",
        Classifier{okData =
                     ClassData{prior = -6.899287148695143e-2,
                               unseen = -3.4011973816621555,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 28},
                   koData =
                     ClassData{prior = -2.70805020110221, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2}}),
       ("at the beginning|end of <week>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -4.330733340286331,
                               likelihoods =
                                 HashMap.fromList
                                   [("week", -0.706570200892086),
                                    ("this|last|next <cycle>", -0.8209805520698302),
                                    ("about|exactly <time-of-day>", -2.70805020110221)],
                               n = 36},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Eid al-Fitr",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("summer",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Trinity Sunday",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.0986122886681098,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 1},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("dd-dd <month> (interval)",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.9444389791664407,
                               likelihoods =
                                 HashMap.fromList
                                   [("integer (numeric)integer (numeric)September",
                                     -1.791759469228055),
                                    ("ordinal (digits)ordinal (digits)July", -2.1972245773362196),
                                    ("ordinal (digits)ordinal (digits)October",
                                     -2.1972245773362196),
                                    ("integer (numeric)integer (numeric)July", -2.1972245773362196),
                                    ("month", -0.9444616088408514),
                                    ("ordinal (digits)ordinal (digits)August",
                                     -2.1972245773362196)],
                               n = 6},
                   koData =
                     ClassData{prior = -infinity, unseen = -1.9459101490553135,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("Pentecost",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -1.3862943611198906,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 2},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("this <time>",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -3.367295829986474,
                               likelihoods =
                                 HashMap.fromList
                                   [("Thursday", -2.639057329615259),
                                    ("Martin Luther King's Day", -2.639057329615259),
                                    ("Monday", -2.639057329615259), ("day", -1.1349799328389845),
                                    ("Thanksgiving Day", -2.639057329615259),
                                    ("Christmas", -2.639057329615259), ("hour", -2.639057329615259),
                                    ("winter", -2.639057329615259),
                                    ("week-end", -2.639057329615259),
                                    ("summer", -2.2335922215070942)],
                               n = 9},
                   koData =
                     ClassData{prior = -infinity, unseen = -2.3978952727983707,
                               likelihoods = HashMap.fromList [], n = 0}}),
       ("August",
        Classifier{okData =
                     ClassData{prior = 0.0, unseen = -2.0794415416798357,
                               likelihoods = HashMap.fromList [("", 0.0)], n = 6},
                   koData =
                     ClassData{prior = -infinity, unseen = -0.6931471805599453,
                               likelihoods = HashMap.fromList [], n = 0}})]