def METHOD_NAME(self, operator: OperatorBase) -> OperatorBase:
    if not isinstance(operator, (SummedOp, PauliSumOp)):
        raise TypeError("Trotterization converters can only convert SummedOp or PauliSumOp.")
    if isinstance(operator.coeff, (float, ParameterExpression)):
        coeff = operator.coeff
    else:
        if isreal(operator.coeff):
            coeff = operator.coeff.real
        else:
            raise TypeError(
                "Coefficient of the operator must be float or ParameterExpression, "
                f"but {operator.coeff}:{type(operator.coeff)} is given."
            )
    if isinstance(operator, PauliSumOp):
        comp_list = self._recursive_expansion(operator, coeff, self.order, self.reps)
    if isinstance(operator, SummedOp):
        comp_list = Suzuki._recursive_expansion(operator.oplist, coeff, self.order, self.reps)
    single_rep = ComposedOp(cast(List[OperatorBase], comp_list))
    full_evo = single_rep.power(self.reps)
    return full_evo.reduce()