function create(address baseToken_, address quoteToken_, uint256 lpFeeRate_, uint256 i_, uint256 k_) external returns (address clone) {
    IMagicLP(clone).init(address(baseToken_), address(quoteToken_), lpFeeRate_, address(maintainerFeeRateModel), i_, k_);
}
function setMaintainerFeeRateModel(IFeeRateModel maintainerFeeRateModel_) external onlyOwner {
    if (address(maintainerFeeRateModel_) == address(0)) {
        revert ErrZeroAddress();
    }

    maintainerFeeRateModel = maintainerFeeRateModel_;
    emit LogSetMaintainerFeeRateModel(maintainerFeeRateModel_);
}
