CPLIB_MATH_COMBINATION = 1
proc initCombination[ModInt](max_N: int): Combination_Type[ModInt]
proc ncr[ModInt](c: Combination_Type[ModInt]; n, r: int): ModInt
proc nhr[ModInt](c: Combination_Type[ModInt]; n, r: int): ModInt
proc npr[ModInt](c: Combination_Type[ModInt]; n, r: int): ModInt