Bunicorn flexible pools are modeled after the concept of N-dimensional invariant surface AMM proposed by Balancers. Each pool contains the two or more tokens and each must have the independent weight. The weight of the token in each pool represents its proportion of the total pool value.
Liquidity providers can also join a multi-token pool with a single asset.
There are two types of Bunicorn flexible pools:
Shared Pool: anyone can add or remove the liquidity and swap tokens in the pools.
Smart Pool: pool creator can change 6 different parameters like Change Weight, Change Fee, Pause Swap, Restricted LP to whitelist
It also has a built-in smart order router that automatically splits your swap across flexible pools for optimized price.