class factorial(): def __init__(self,n=0,mod=998244353): self.mod=mod self.fact_n=[1] self.fact_i=[1] self.fact_l=0 self.create(n) def create(self,n): if self.fact_l=0 if n>self.fact_l: self.create(n) return self.fact_n[n] def fact_inv(self,n): assert n>=0 if n>self.fact_l: self.create(n) return self.fact_i[n] def perm(self,n,r): if r<0: return 0 if n>=0: if n=0: if n