se
    (_:Token Numeral NumeralData{TNumeral.value = v}:_) ->
      double $ 100 + v*10
    _ -> Nothing
  }

ruleThousandPrefix :: Rule
ruleThousandPrefix = Rule
  { name = "one thousand and <integer> (short form)"
  , pattern =
    [ regex "千|仟"
    , numberBetween 1 10
    ]
  , prod = \c
ruleHundredPrefix :: Rule
ruleHundredPrefix = Rule
  { name = "one hundred and <integer> (short form)"
  , pattern =
    [ regex "百|佰"
    , numberBetween 1 10
    ]
  , prod = \case
    (_:Token Numeral NumeralData{TNumeral.value = v}:_) ->
      double $ 100 + v*10
    _ -> Nothing
  }
ruleHundredPrefix = Rule
  { name = "one hundred and <integer> (short form)"
  , pattern =
    [ regex "百|佰"
    , numberBetween 1 10
    ]
  , prod = \case
    (_:Token Numeral NumeralData{TNumeral.value = v}:_) ->
      double $ 100 + v*10
    _ -> Nothing
  }