We provide zap contracts that combine logic and functionality into a single transaction. This section will provide detail on each zap contract.
Flaunch & Buy
Flaunches a memecoin and makes a token buy from the Fair Launch supply in the same transaction. This ensures that the token buy cannot be frontrun by bots, and gives the creator a share of their fair launch memecoin supply.
/** * Flaunches a new token and premines some tokens for the creator in exchange for ETH. * * @return memecoin_ The created ERC20 token address * @return ethSpent_ The amount of ETH spent during the premine */functionflaunch(PositionManager.FlaunchParamscalldata_params) externalpayablereturns (address memecoin_,uint ethSpent_) {// ..}
The FlaunchParams passed are the same as a typical PositionManager.flaunch call:
/** * Parameters required when flaunching a new token. * * @member name Name of the token * @member symbol Symbol of the token * @member tokenUri The generated ERC721 token URI * @member initialTokenFairLaunch The amount of tokens to add as single sided fair launch liquidity * @member premineAmount The amount of tokens that the creator will buy themselves * @member creator The address that will receive the ERC721 ownership and premined ERC20 tokens * @member creatorFeeAllocation The percentage of fees the creators wants to take from the BidWall * @member flaunchAt The timestamp at which the token will launch */structFlaunchParams {string name;string symbol;string tokenUri;uint initialTokenFairLaunch;uint premineAmount;address creator;uint24 creatorFeeAllocation;uint flaunchAt; }
This call does not bypass the buy price and requires additional ETH to be sent to the zap in order to execute the transaction.
Note
The premine parameter is passed in the PositionManager flaunch call, but it won't actually be actioned unless this zap is called instead. The premine attribute only allocates the buy that is then filled when called via the zap.
Deployment Addresses
We strive to maintain uniformity in our deployment addresses, but always check before implementing across multiple chains.