Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
AppStorage internal s;function pause() external payable;function unpause() external payable;event Pause(uint256 timestamp);event Unpause(uint256 timestamp, uint256 timePassed);deltaB > 0 over the course of a Season. Assuming there are Unharvestable Pods and Unfertilized Beans, 1/3 of Bean mints turn Pods into Harvestable Pods, which can be Harvested (redeemed) for Beans via the harvest() function. When a Plot is Harvested, it is deleted from storage.
struct PodListing {
address account;
uint256 index;
uint256 start;
uint256 amount;
uint24 pricePerPod;
uint256 maxHarvestableIndex;
LibTransfer.To mode;
}struct PodOrder {
address account;
uint24 pricePerPod;
uint256 maxPlaceInLine;
}function farm(bytes[] calldata data)
external
payable
withEth
returns (bytes[] memory results);function advancedFarm(AdvancedFarmCall[] calldata data)
external
payable
withEth
returns (bytes[] memory results);function diamondCut(
FacetCut[] calldata _diamondCut,
address _init,
bytes calldata _calldata
) external override;s.activeFertilizer == 0function uri(uint256 depositId) external view returns (string memory);function name() external pure returns (string memory);function symbol() external pure returns (string memory);function imageURI(uint256 depositId) public view returns (string memory);event URI(string _uri, uint256 indexed _id);function facets() external view override returns (Facet[] memory facets_);function facetFunctionSelectors(address _facet)
external
view
override
returns (bytes4[] memory facetFunctionSelectors_);function facetAddresses()
external
view
override
returns (address[] memory facetAddresses_);function facetAddress(bytes4 _functionSelector)
external
view
override
returns (address facetAddress_);function supportsInterface(bytes4 _interfaceId)
external
view
override
returns (bool);function getMaxAmountIn(address tokenIn, address tokenOut)
external
view
returns (uint256 amountIn);function getAmountOut(
address tokenIn,
address tokenOut,
uint256 amountIn
) external view returns (uint256 amountOut);enum From {
EXTERNAL,
INTERNAL,
EXTERNAL_INTERNAL,
INTERNAL_TOLERANT
}enum To {
EXTERNAL,
INTERNAL
}function transferToken(
IERC20 token,
address recipient,
uint256 amount,
LibTransfer.From fromMode,
LibTransfer.To toMode
) external payable;function sendToken(
IERC20 token,
uint256 amount,
address recipient,
To mode
) internal;function receiveToken(
IERC20 token,
uint256 amount,
address recipient,
To mode
) internal;function claimWithdrawal(
address token,
uint32 season,
LibTransfer.To mode
) external payable nonReentrant;function claimWithdrawals(
address token,
uint32[] calldata seasons,
LibTransfer.To mode
) external payable nonReentrant;function getWithdrawal(
address account,
address token,
uint32 season
) external view returns (uint256);function getTotalWithdrawn(address token) external view returns (uint256);function pipe(PipeCall calldata p)
external
payable
returns (bytes memory result);function multiPipe(PipeCall[] calldata pipes)
external
payable
returns (bytes[] memory results);function advancedPipe(AdvancedPipeCall[] calldata pipes, uint256 value)
external
payable
returns (bytes[] memory results);function etherPipe(PipeCall calldata p, uint256 value)
external
payable
returns (bytes memory result);function readPipe(PipeCall calldata p)
external
view
returns (bytes memory result);function transferOwnership(address _newOwner) external;function claimOwnership() external;function owner() external view returns (address owner_);function ownerCandidate() external view returns (address ownerCandidate_);event OwnershipTransferred(
address indexed previousOwner,
address indexed newOwner
);function curveToBDV(uint256 amount) public view returns (uint256);function beanToBDV(uint256 amount) public pure returns (uint256);function unripeLPToBDV(uint256 amount) public view returns (uint256);function unripeBeanToBDV(uint256 amount) public view returns (uint256);function wellBdv(address token, uint256 amount)
external
view
returns (uint256);gm function?initialize function?struct SiloSettings {
bytes4 selector;
uint32 seeds;
uint32 stalk;
}
mapping(address => Storage.SiloSettings) ss;seeds = depositBdv * s.ss[token].seeds;
stalk = depositBdv * s.ss[token].stalk + (currentSeason - depositSeason) * seedsmapping(address => mapping(uint32 => Deposit)) deposits;
struct Deposit {
uint128 amount;
uint128 bdv;
}mapping(address => mapping(uint32 => uint256)) withdrawals;depositSeason = currentSeason - (grownStalk / depositSeeds)function convert(
bytes calldata convertData,
int96[] memory stems,
uint256[] memory amounts
)
external
payable
nonReentrant
returns (int96 toStem, uint256 fromAmount, uint256 toAmount, uint256 fromBdv, uint256 toBdv);event Convert(
address indexed account,
address fromToken,
address toToken,
uint256 fromAmount,
uint256 toAmount
);event RemoveDeposit(
address indexed account,
address indexed token,
int96 stem,
uint256 amount,
uint256 bdv
);event RemoveDeposits(
address indexed account,
address indexed token,
int96[] stems,
uint256[] amounts,
uint256 amount,
uint256[] bdvs
);function mowAndMigrate(
address account,
address[] calldata tokens,
uint32[][] calldata seasons,
uint256[][] calldata amounts,
uint256 stalkDiff,
uint256 seedsDiff,
bytes32[] calldata proof
) external payable;function mowAndMigrateNoDeposits(address account) external payable;function balanceOfLegacySeeds(address account) external view returns (uint256);function balanceOfGrownStalkUpToStemsDeployment(address account)
external
view
returns (uint256);function getDepositLegacy(
address account,
address token,
uint32 season
) external view returns (uint128, uint128);function dewhitelistToken(address token) external payable;function whitelistToken(
address token,
bytes4 selector,
uint32 stalkIssuedPerBdv,
uint32 stalkEarnedPerSeason
) external payable;function whitelistTokenWithEncodeType(
address token,
bytes4 selector,
uint32 stalkIssuedPerBdv,
uint32 stalkEarnedPerSeason,
bytes1 encodeType
) external payable;function updateStalkPerBdvPerSeasonForToken(
address token,
uint32 stalkEarnedPerSeason
) external payable;event WhitelistToken(
address indexed token,
bytes4 selector,
uint32 stalkEarnedPerSeason,
uint256 stalkIssuedPerBdv
);event UpdatedStalkPerBdvPerSeason(
address indexed token,
uint32 stalkEarnedPerSeason,
uint32 season
);event DewhitelistToken(address indexed token);function enrootDeposit(
address token,
int96 stem,
uint256 amount
) external payable nonReentrant mowSender(token);function enrootDeposits(
address token,
int96[] calldata stems,
uint256[] calldata amounts
) external payable nonReentrant mowSender(token);event RemoveDeposit(
address indexed account,
address indexed token,
int96 stem,
uint256 amount,
uint256 bdv
);event RemoveDeposits(
address indexed account,
address indexed token,
int96[] stems,
uint256[] amounts,
uint256 amount,
uint256[] bdvs
);function permitERC20(
IERC20Permit token,
address owner,
address spender,
uint256 value,
uint256 deadline,
uint8 v,
bytes32 r,
bytes32 s
) public payable;function transferERC721(
IERC721 token,
address to,
uint256 id
) external payable;function permitERC721(
IERC4494 token,
address spender,
uint256 tokenId,
uint256 deadline,
bytes memory sig
) external payable;function transferERC1155(
IERC1155 token,
address to,
uint256 id,
uint256 value
) external payable;function batchTransferERC1155(
IERC1155 token,
address to,
uint256[] calldata ids,
uint256[] calldata values
) external payable;function fund(
uint32 id,
uint256 amount,
LibTransfer.From mode
) external payable nonReentrant returns (uint256);function createFundraiser(
address payee,
address token,
uint256 amount
) external payable;function remainingFunding(uint32 id) public view returns (uint256);function totalFunding(uint32 id) public view returns (uint256);function fundingToken(uint32 id) public view returns (address);function fundraiser(uint32 id)
public
view
returns (Storage.Fundraiser memory);function numberOfFundraisers() public view returns (uint32);event CreateFundraiser(
uint32 indexed id,
address fundraiser,
address token,
uint256 amount
);event FundFundraiser(
address indexed account,
uint32 indexed id,
uint256 amount
);event CompleteFundraiser(uint32 indexed id);function exchange(
address pool,
address registry,
address fromToken,
address toToken,
uint256 amountIn,
uint256 minAmountOut,
LibTransfer.From fromMode,
LibTransfer.To toMode
) external payable nonReentrant;function exchangeUnderlying(
address pool,
address fromToken,
address toToken,
uint256 amountIn,
uint256 minAmountOut,
LibTransfer.From fromMode,
LibTransfer.To toMode
) external payable nonReentrant;function addLiquidity(
address pool,
address registry,
uint256[] memory amounts,
uint256 minAmountOut,
LibTransfer.From fromMode,
LibTransfer.To toMode
) external payable nonReentrant;function removeLiquidity(
address pool,
address registry,
uint256 amountIn,
uint256[] calldata minAmountsOut,
LibTransfer.From fromMode,
LibTransfer.To toMode
) external payable nonReentrant;function removeLiquidityImbalance(
address pool,
address registry,
uint256[] calldata amountsOut,
uint256 maxAmountIn,
LibTransfer.From fromMode,
LibTransfer.To toMode
) external payable nonReentrant;function removeLiquidityOneToken(
address pool,
address registry,
address toToken,
uint256 amountIn,
uint256 minAmountOut,
LibTransfer.From fromMode,
LibTransfer.To toMode
) external payable nonReentrant;function sow(
uint256 beans,
uint256 minTemperature,
LibTransfer.From mode
)
external
payable
returns (uint256 pods);function sowWithMin(
uint256 beans,
uint256 minTemperature,
uint256 minSoil,
LibTransfer.From mode
) public payable returns (uint256 pods);function harvest(uint256[] calldata plots, LibTransfer.To mode)
external
payable;function podIndex() public view returns (uint256);function harvestableIndex() public view returns (uint256);function totalPods() public view returns (uint256);function totalHarvested() public view returns (uint256);function totalHarvestable() public view returns (uint256);function totalUnharvestable() public view returns (uint256);function plot(address account, uint256 index)
public
view
returns (uint256);function totalSoil() external view returns (uint256);function yield() external view returns (uint32);function temperature() external view returns (uint256);function maxTemperature() external view returns (uint256);function remainingPods() external view returns (uint256);event Sow(
address indexed account,
uint256 index,
uint256 beans,
uint256 pods
);event Harvest(address indexed account, uint256[] plots, uint256 beans);event PodListingCancelled(address indexed account, uint256 index);function sunrise() external payable returns (uint256);function gm(
address account,
LibTransfer.To mode
) public payable returns (uint256);function season() public view returns (uint32);function paused() public view returns (bool);function time() external view returns (Storage.Season memory);function abovePeg() external view returns (bool);function sunriseBlock() external view returns (uint32);function seasonTime() public view virtual returns (uint32);function weather() public view returns (Storage.Weather memory);function rain() public view returns (Storage.Rain memory);function plentyPerRoot(uint32 season) external view returns (uint256);function totalDeltaB() external view returns (int256 deltaB);function poolDeltaB(address pool) external view returns (int256);function wellOracleSnapshot(address well) external view returns (bytes memory snapshot);function curveOracle() external view returns (Storage.CurveMetapoolOracle memory co);event Sunrise(uint256 indexed season);event Incentivization(address indexed account, uint256 beans);event Reward(uint32 indexed season, uint256 toField, uint256 toSilo, uint256 toFertilizer);event Soil(uint32 indexed season, uint256 soil);event WeatherChange(uint256 indexed season, uint256 caseId, int8 change);event SeasonOfPlenty(
uint256 indexed season,
uint256 amount,
uint256 toField
);function approveDeposit(
address spender,
address token,
uint256 amount
) external payable nonReentrant;function increaseDepositAllowance(
address spender,
address token,
uint256 addedValue
) public virtual nonReentrant returns (bool);function decreaseDepositAllowance(
address spender,
address token,
uint256 subtractedValue
) public virtual nonReentrant returns (bool);function permitDeposits(
address owner,
address spender,
address[] calldata tokens,
uint256[] calldata values,
uint256 deadline,
uint8 v,
bytes32 r,
bytes32 s
) external payable nonReentrant;function permitDeposit(
address owner,
address spender,
address token,
uint256 value,
uint256 deadline,
uint8 v,
bytes32 r,
bytes32 s
) external payable nonReentrant;function setApprovalForAll(
address spender,
bool approved
) external;function depositPermitNonces(address owner) public view virtual returns (uint256);function depositPermitDomainSeparator() external view returns (bytes32);function depositAllowance(
address owner,
address spender,
address token
) public view virtual returns (uint256);function isApprovedForAll(
address _owner,
address _operator
) external view returns (bool);event DepositApproval(
address indexed owner,
address indexed spender,
address token,
uint256 amount
);event ApprovalForAll(address indexed account, address indexed operator, bool approved);function claimFertilized(uint256[] calldata ids, LibTransfer.To mode)
external
payable;function mintFertilizer(
uint128 amount,
uint256 minLP,
LibTransfer.From mode
) external payable;function addFertilizerOwner(
uint128 id,
uint128 amount,
uint256 minLP
) external payable;function payFertilizer(address account, uint256 amount) external payablefunction totalFertilizedBeans() external view returns (uint256 beans);function totalUnfertilizedBeans() external view returns (uint256 beans);function totalFertilizerBeans() external view returns (uint256 beans);function getFertilizer(uint128 id) external view returns (uint256);function getNext(uint128 id) external view returns (uint128);function getFirst() external view returns (uint128);function getLast() external view returns (uint128);function getActiveFertilizer() external view returns (uint256);function isFertilizing() external view returns (bool);function beansPerFertilizer() external view returns (uint128 bpf);function getHumidity(uint128 _s) external pure returns (uint128 humidity);function getCurrentHumidity() external view returns (uint128 humidity);function getEndBpf() external view returns (uint128 endBpf);function remainingRecapitalization() external view returns (uint256);function balanceOfUnfertilized(address account, uint256[] memory ids)
external
view
returns (uint256 beans);function balanceOfFertilized(address account, uint256[] memory ids)
external
view
returns (uint256 beans);function balanceOfFertilizer(address account, uint256 id)
external
view
returns (IFertilizer.Balance memory);function balanceOfBatchFertilizer(
address[] memory accounts,
uint256[] memory ids
) external view returns (IFertilizer.Balance[] memory);function getFertilizers()
external
view
returns (Supply[] memory fertilizers);event SetFertilizer(uint128 id, uint128 bpf);function chop(
address unripeToken,
uint256 amount,
LibTransfer.From fromMode,
LibTransfer.To toMode
) external payable nonReentrant returns (uint256 underlyingAmount);function pick(
address token,
uint256 amount,
bytes32[] memory proof,
LibTransfer.To mode
) external payable nonReentrant;function addUnripeToken(
address unripeToken,
address underlyingToken,
bytes32 root
) external payable nonReentrant;function picked(address account, address token)
public
view
returns (bool);function getUnderlying(address unripeToken, uint256 amount)
public
view
returns (uint256 redeem);function getPenalty(address unripeToken)
external
view
returns (uint256 penalty);function getPenalizedUnderlying(address unripeToken, uint256 amount)
public
view
returns (uint256 redeem);function _getPenalizedUnderlying(address unripeToken, uint256 amount, uint256 supply)
public
view
returns (uint256 redeem);function isUnripe(address unripeToken) public view returns (bool unripe);function balanceOfUnderlying(address unripeToken, address account)
external
view
returns (uint256 underlying);function balanceOfPenalizedUnderlying(address unripeToken, address account)
external
view
returns (uint256 underlying);function getRecapFundedPercent(address unripeToken)
public
view
returns (uint256 percent);function getPercentPenalty(address unripeToken)
external
view
returns (uint256 penalty);function getRecapPaidPercent() external view returns (uint256 penalty);function getRecapPaidPercentAmount(uint256 amount)
private
view
returns (uint256 penalty);function getUnderlyingPerUnripeToken(address unripeToken)
external
view
returns (uint256 underlyingPerToken);function getTotalUnderlying(address unripeToken)
external
view
returns (uint256 underlying);function getUnderlyingToken(address unripeToken)
external
view
returns (address underlyingToken)event AddUnripeToken(
address indexed unripeToken,
address indexed underlyingToken,
bytes32 merkleRoot
);event ChangeUnderlying(address indexed token, int256 underlying);event Chop(
address indexed account,
address indexed token,
uint256 amount,
uint256 underlying
);event Pick(
address indexed account,
address indexed token,
uint256 amount
);function transferToken(
IERC20 token,
address recipient,
uint256 amount,
LibTransfer.From fromMode,
LibTransfer.To toMode
) external payable;function transferInternalTokenFrom(
IERC20 token,
address sender,
address recipient,
uint256 amount,
LibTransfer.To toMode
) external payable nonReentrant;function approveToken(
address spender,
IERC20 token,
uint256 amount
) external payable nonReentrant;function increaseTokenAllowance(
address spender,
IERC20 token,
uint256 addedValue
) public virtual nonReentrant returns (bool);function decreaseTokenAllowance(
address spender,
IERC20 token,
uint256 subtractedValue
) public virtual nonReentrant returns (bool);function tokenAllowance(
address account,
address spender,
IERC20 token
) public view virtual returns (uint256);function permitToken(
address owner,
address spender,
address token,
uint256 value,
uint256 deadline,
uint8 v,
bytes32 r,
bytes32 s
) external payable nonReentrant;function tokenPermitNonces(address owner)
public
view
virtual
returns (uint256);function tokenPermitDomainSeparator() external view returns (bytes32);function onERC1155Received(
address,
address,
uint256,
uint256,
bytes calldata
) external pure override returns (bytes4);function onERC1155BatchReceived(
address,
address,
uint256[] calldata,
uint256[] calldata,
bytes calldata
) external pure override returns (bytes4);function wrapEth(uint256 amount, LibTransfer.To mode) external payable;function unwrapEth(uint256 amount, LibTransfer.From mode) external payable;function getInternalBalance(address account, IERC20 token)
public
view
returns (uint256 balance);function getInternalBalances(address account, IERC20[] memory tokens)
external
view
returns (uint256[] memory balances);function getExternalBalance(address account, IERC20 token)
public
view
returns (uint256 balance);function getExternalBalances(address account, IERC20[] memory tokens)
external
view
returns (uint256[] memory balances);function getBalance(address account, IERC20 token)
public
view
returns (uint256 balance);function getBalances(address account, IERC20[] memory tokens)
external
view
returns (uint256[] memory balances);function getAllBalance(address account, IERC20 token)
public
view
returns (Balance memory b);function getAllBalances(address account, IERC20[] memory tokens)
external
view
returns (Balance[] memory balances);event InternalBalanceChanged(
address indexed account,
IERC20 indexed token,
int256 delta
);event TokenApproval(
address indexed owner,
address indexed spender,
IERC20 token,
uint256 amount
);function createPodListing(
uint256 index,
uint256 start,
uint256 amount,
uint24 pricePerPod,
uint256 maxHarvestableIndex,
uint256 minFillAmount,
LibTransfer.To mode
) external payable;function createPodListingV2(
uint256 index,
uint256 start,
uint256 amount,
uint256 maxHarvestableIndex,
uint256 minFillAmount,
bytes calldata pricingFunction,
LibTransfer.To mode
) external payable;function fillPodListing(
PodListing calldata l,
uint256 beanAmount,
LibTransfer.From mode
) external payable;function fillPodListingV2(
PodListing calldata l,
uint256 beanAmount,
bytes calldata pricingFunction,
LibTransfer.From mode
) external payable;function cancelPodListing(uint256 index) external payable;function createPodOrder(
uint256 beanAmount,
uint24 pricePerPod,
uint256 maxPlaceInLine,
uint256 minFillAmount,
LibTransfer.From mode
) external payable returns (bytes32 id);function createPodOrderV2(
uint256 beanAmount,
uint256 maxPlaceInLine,
uint256 minFillAmount,
bytes calldata pricingFunction,
LibTransfer.From mode
) external payable returns (bytes32 id);function fillPodOrder(
PodOrder calldata o,
uint256 index,
uint256 start,
uint256 amount,
LibTransfer.To mode
) external payable;function fillPodOrderV2(
PodOrder calldata o,
uint256 index,
uint256 start,
uint256 amount,
bytes calldata pricingFunction,
LibTransfer.To mode
) external payable;function cancelPodOrder(
uint24 pricePerPod,
uint256 maxPlaceInLine,
uint256 minFillAmount,
LibTransfer.To mode
) external payable;function cancelPodOrderV2(
uint256 maxPlaceInLine,
uint256 minFillAmount,
bytes calldata pricingFunction,
LibTransfer.To mode
) external payable;function transferPlot(
address sender,
address recipient,
uint256 id,
uint256 start,
uint256 end
) external payable nonReentrant;function approvePods(address spender, uint256 amount)
external
payable
nonReentrant;function getAmountPodsFromFillListingV2(
uint256 placeInLine,
uint256 podListingAmount,
uint256 fillBeanAmount,
bytes calldata pricingFunction
) public pure returns (uint256 amount);function getAmountBeansToFillOrderV2(
uint256 placeInLine,
uint256 amountPodsFromOrder,
bytes calldata pricingFunction
) public pure returns (uint256 beanAmount);function podOrder(
address account,
uint24 pricePerPod,
uint256 maxPlaceInLine,
uint256 minFillAmount
) external view returns (uint256);function podOrderV2(
address account,
uint256 maxPlaceInLine,
uint256 minFillAmount,
bytes calldata pricingFunction
) external view returns (uint256);function podOrderById(bytes32 id) external view returns (uint256);function podListing(uint256 index) external view returns (bytes32);function allowancePods(address owner, address spender)
public
view
returns (uint256);event PodListingCreated(
address indexed account,
uint256 index,
uint256 start,
uint256 amount,
uint24 pricePerPod,
uint256 maxHarvestableIndex,
uint256 minFillAmount,
bytes pricingFunction,
LibTransfer.To mode,
LibPolynomial.PriceType pricingType
);event PodListingFilled(
address indexed from,
address indexed to,
uint256 index,
uint256 start,
uint256 amount,
uint256 costInBeans
);event PodListingCancelled(address indexed account, uint256 index);event PodOrderCreated(
address indexed account,
bytes32 id,
uint256 amount,
uint24 pricePerPod,
uint256 maxPlaceInLine,
uint256 minFillAmount,
bytes pricingFunction,
LibPolynomial.PriceType priceType
);event PodOrderFilled(
address indexed from,
address indexed to,
bytes32 id,
uint256 index,
uint256 start,
uint256 amount,
uint256 costInBeans
);event PodOrderCancelled(address indexed account, bytes32 id);event PlotTransfer(
address indexed from,
address indexed to,
uint256 indexed id,
uint256 pods
);event PodApproval(
address indexed owner,
address indexed spender,
uint256 pods
);function deposit(
address token,
uint256 _amount,
LibTransfer.From mode
)
external
payable
nonReentrant
mowSender(token)
returns (uint256 amount, uint256 bdv, int96 stem);function withdrawDeposit(
address token,
int96 stem,
uint256 amount
LibTransfer.To mode
) external payable mowSender(token) nonReentrant;function withdrawDeposits(
address token,
int96[] calldata stems,
uint256[] calldata amounts,
LibTransfer.To mode
) external payable mowSender(token) nonReentrant;function transferDeposit(
address sender,
address recipient,
address token,
int96 stem,
uint256 amount
) public payable nonReentrant returns (uint256 bdv);function transferDeposits(
address sender,
address recipient,
address token,
int96[] calldata stem,
uint256[] calldata amounts
) public payable nonReentrant returns (uint256[] memory bdvs);function safeTransferFrom(
address sender,
address recipient,
uint256 depositId,
uint256 amount,
bytes calldata
) external;function safeBatchTransferFrom(
address sender,
address recipient,
uint256[] calldata depositIds,
uint256[] calldata amounts,
bytes calldata
) external;function mow(address account, address token) external payable;function mowMultiple(address account, address[] calldata tokens) external payable;function plant()
external payable returns (uint256 beans, int96 stem);function claimPlenty() external payable;function lastUpdate(address account) public view returns (uint32);function totalStalk() public view returns (uint256);function totalRoots() public view returns (uint256);function totalEarnedBeans() public view returns (uint256);function balanceOfStalk(address account) public view returns (uint256);function balanceOfRoots(address account) public view returns (uint256);function balanceOfGrownStalk(address account, address token)
public
view
returns (uint256);function grownStalkForDeposit(
address account,
address token,
int96 stem
)
public
view
returns (uint grownStalk);function balanceOfEarnedBeans(address account)
public
view
returns (uint256 beans);function balanceOfEarnedStalk(address account)
public
view
returns (uint256)function balanceOfDepositedBdv(address account, address token)
external
view
returns (uint256 depositedBdv);function getLastMowedStem(address account, address token)
external
view
returns (int96 lastStem);function getMowStatus(address account, address token)
external
view
returns (Account.MowStatus memory mowStatus);function lastSeasonOfPlenty() public view returns (uint32);function balanceOfPlenty(address account)
public
view
returns (uint256 plenty);function balanceOfRainRoots(address account) public view returns (uint256);function balanceOfSop(address account)
external
view
returns (AccountSeasonOfPlenty memory sop);function stemTipForToken(address token)
public
view
returns (int96 _stemTip);function seasonToStem(address token, uint32 season)
public
view
returns (int96 stem);function getSeedsPerToken(address token) public view virtual returns (uint256);function stemStartSeason() public view virtual returns (uint16);function migrationNeeded(address account) public view returns (bool);function inVestingPeriod() public view returns (bool);function getDeposit(
address account,
address token,
int96 stem
) external view returns (uint256, uint256)function getTotalDeposited(address token) external view returns (uint256);function getTotalDepositedBdv(address token) external view returns (uint256);function tokenSettings(address token)
external
view
returns (Storage.SiloSettings memory);function bdv(address token, uint256 amount)
external
view
returns (uint256 _bdv);function balanceOf(
address account,
uint256 depositId
) external view returns (uint256 amount);function balanceOfBatch(
address[] calldata accounts,
uint256[] calldata depositIds
) external view returns (uint256[] memory);function getDepositId(
address token,
int96 stem
) external pure returns (uint256);event Plant(
address indexed account,
uint256 beans
);event ClaimPlenty(
address indexed account,
uint256 plenty
);event StalkBalanceChanged(
address indexed account,
int256 delta,
int256 deltaRoots
);event AddDeposit(
address indexed account,
address indexed token,
int96 stem,
uint256 amount,
uint256 bdv
);event RemoveDeposit(
address indexed account,
address indexed token,
int96 stem,
uint256 amount,
uint256 bdv
);event RemoveDeposits(
address indexed account,
address indexed token,
int96[] stems,
uint256[] amounts,
uint256 amount,
uint256[] bdvs
);event TransferSingle(
address indexed operator,
address indexed from,
address indexed to,
uint256 id,
uint256 value
);event TransferBatch(
address indexed operator,
address indexed from,
address indexed to,
uint256[] ids,
uint256[] values
);event RemoveWithdrawals(
address indexed account,
address indexed token,
uint32[] seasons,
uint256 amount
);event RemoveWithdrawal(
address indexed account,
address indexed token,
uint32 season,
uint256 amount
);event Vote(address indexed account, uint32 indexed bip, uint256 stalk, uint256 seeds);event Vote(address indexed account, uint32 indexed bip, uint256 roots);event Unvote(address indexed account, uint32 indexed bip, uint256 stalk, uint256 seeds);event Unvote(address indexed account, uint32 indexed bip, uint256 roots);event BeanAllocation(address indexed account, uint256 beans);event BeanClaim(address indexed account, uint32[] withdrawals, uint256 beans);event LPClaim(address indexed account, uint32[] withdrawals, uint256 lp);event EtherClaim(address indexed account, uint256 ethereum);event Harvest(address indexed account, uint256[] plots, uint256 beans);event CreateFundraiser(uint32 indexed id, address fundraiser, address token, uint256 amount);event FundFundraiser(address indexed account, uint32 indexed id, uint256 amount);event CompleteFundraiser(uint32 indexed id);event LPDeposit(address indexed account, uint256 season, uint256 lp, uint256 seeds);event LPRemove(address indexed account, uint32[] crates, uint256[] crateLP, uint256 lp);event BeanRemove(address indexed account, uint32[] crates, uint256[] crateBeans, uint256 beans);event Sow(address indexed account, uint256 index, uint256 beans, uint256 pods);event VoteList(address indexed account, uint32[] indexed bips, bool[] votes, uint256 roots);event BeanDeposit(address indexed account, uint256 season, uint256 beans);event LPDeposit(address indexed account, uint256 season, uint256 lp, uint256 seeds);event PodListingCreated(
address indexed account,
uint256 index,
uint256 start,
uint256 amount,
uint24 pricePerPod,
uint256 maxHarvestableIndex,
bool toWallet
);event PodListingFilled(
address indexed from,
address indexed to,
uint256 index,
uint256 start,
uint256 amount
);event PodListingCancelled(address indexed account, uint256 index);event PodOrderCreated(
address indexed account,
bytes32 id,
uint256 amount,
uint24 pricePerPod,
uint256 maxPlaceInLine
);event PodOrderFilled(
address indexed from,
address indexed to,
bytes32 id,
uint256 index,
uint256 start,
uint256 amount
);event PodOrderCancelled(address indexed account, bytes32 id);event PlotTransfer(address indexed from, address indexed to, uint256 indexed id, uint256 pods);event PodApproval(address indexed owner, address indexed spender, uint256 pods);event BeanAllocation(address indexed account, uint256 beans);event Deposit(address indexed account, address indexed token, uint256 season, uint256 amount, uint256 bdv);event RemoveSeason(address indexed account, address indexed token, uint32 season, uint256 amount);event Withdraw(address indexed account, address indexed token, uint32 season, uint256 amount);event ClaimSeasons(address indexed account, address indexed token, uint32[] seasons, uint256 amount);event ClaimSeason(address indexed account, address indexed token, uint32 season, uint256 amount);event VoteList(address indexed account, uint32[] indexed bips, bool[] votes, uint256 roots);event VoteList(address indexed account, uint32[] bips, bool[] votes, uint256 roots);event Convert(
address indexed account,
address fromToken,
address toToken,
uint256 fromAmount,
uint256 toAmount
);event RemoveDeposits(
address indexed account,
address indexed token,
uint32[] seasons,
uint256[] amounts,
uint256 amount
);event SetFertilizer(uint128 id, uint128 bpf);event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);event MetapoolOracle(uint32 indexed season, int256 deltaB, uint256[2] balances);event Reward(uint32 indexed season, uint256 toField, uint256 toSilo, uint256 toFertilizer);event Soil(uint32 indexed season, uint256 soil);event Plant(
address indexed account,
uint256 beans
);event ClaimPlenty(
address indexed account,
uint256 plenty
);event SeedsBalanceChanged(
address indexed account,
int256 delta
);event StalkBalanceChanged(
address indexed account,
int256 delta,
int256 deltaRoots
);event AddDeposit(
address indexed account,
address indexed token,
uint32 season,
uint256 amount,
uint256 bdv
);event RemoveDeposit(
address indexed account,
address indexed token,
uint32 season,
uint256 amount
);event AddWithdrawal(
address indexed account,
address indexed token,
uint32 season,
uint256 amount
);event RemoveWithdrawals(
address indexed account,
address indexed token,
uint32[] seasons,
uint256 amount
);event RemoveWithdrawal(
address indexed account,
address indexed token,
uint32 season,
uint256 amount
);event InternalBalanceChanged(
address indexed user,
IERC20 indexed token,
int256 delta
);event InternalBalanceChanged(
address indexed account,
IERC20 indexed token,
int256 delta
);event AddUnripeToken(
address indexed unripeToken,
address indexed underlyingToken,
bytes32 merkleRoot
);event ChangeUnderlying(address indexed token, int256 underlying);event Chop(
address indexed account,
address indexed token,
uint256 amount,
uint256 underlying
);event Pick(
address indexed account,
address indexed token,
uint256 amount
);event WhitelistToken(
address indexed token,
bytes4 selector,
uint256 seeds,
uint256 stalk
);event DewhitelistToken(address indexed token);event RemoveSeason(
address indexed account,
address indexed token,
uint32 season,
uint256 amount
);event PodOrderCancelled(address indexed account, bytes32 id);event ClaimFertilizer(uint256[] ids, uint256 beans);event MetapoolOracle(uint32 indexed season, int256 deltaB, uint256[2] balances);event MockConvert(uint256 stalkRemoved, uint256 bdvRemoved);event UpdateTWAPs(uint256[2] balances);event DeltaB(int256 deltaB);event EtherClaim(address indexed account, uint256 ethereum);event BeanAllocation(address indexed account, uint256 beans);event LPDeposit(address indexed account, uint256 season, uint256 lp, uint256 seeds);event Proposal(address indexed account, uint32 indexed bip, uint256 indexed start, uint256 period);event VoteList(address indexed account, uint32[] bips, bool[] votes, uint256 roots);event Unvote(address indexed account, uint32 indexed bip, uint256 roots);event Commit(address indexed account, uint32 indexed bip);event Incentivization(address indexed account, uint256 beans);event Vote(address indexed account, uint32 indexed bip, uint256 roots);event SeasonSnapshot(
uint32 indexed season,
uint256 price,
uint256 supply,
uint256 stalk,
uint256 seeds,
uint256 podIndex,
uint256 harvestableIndex
);event SupplyIncrease(
uint256 indexed season,
uint256 price,
uint256 newHarvestable,
uint256 newSilo,
int256 newSoil
);event SupplyDecrease(uint256 indexed season, uint256 price, int256 newSoil);event SupplyNeutral(uint256 indexed season, int256 newSoil);event BeanDeposit(address indexed account, uint256 season, uint256 beans);event BeanWithdraw(address indexed account, uint256 season, uint256 beans);event LPWithdraw(address indexed account, uint256 season, uint256 lp);event Deposit(address indexed account, address indexed token, uint256 season, uint256 amount, uint256 bdv);event RemoveSeason(address indexed account, address indexed token, uint32 season, uint256 amount);event Withdraw(address indexed account, address indexed token, uint32 season, uint256 amount);event PodListingCreated(
address indexed account,
uint256 index,
uint256 start,
uint256 amount,
uint24 pricePerPod,
uint256 maxHarvestableIndex,
bool toWallet
);event PodListingCreated(
address indexed account,
uint256 index,
uint256 start,
uint256 amount,
uint24 pricePerPod,
uint256 maxHarvestableIndex,
LibTransfer.To mode
);event SeasonOfPlenty(uint256 indexed season, uint256 eth, uint256 harvestable);event SeasonOfPlenty(
uint256 indexed season,
uint256 amount,
uint256 toField
);event Pause(address account, uint256 timestamp);event Pause(uint256 timestamp);event Unpause(address account, uint256 timestamp, uint256 timePassed);event Unpause(uint256 timestamp, uint256 timePassed);event DepositApproval(
address indexed owner,
address indexed spender,
address token,
uint256 amount
);event SeedsBalanceChanged(
address indexed account,
int256 delta
);event StalkBalanceChanged(
address indexed account,
int256 delta,
int256 deltaRoots
);event SeedsBalanceChanged(
address indexed account,
int256 delta
);event StalkBalanceChanged(
address indexed account,
int256 delta,
int256 deltaRoots
);event TokenApproval(
address indexed owner,
address indexed spender,
IERC20 token,
uint256 amount
);event PodListingCreated(
address indexed account,
uint256 index,
uint256 start,
uint256 amount,
uint24 pricePerPod,
uint256 maxHarvestableIndex,
LibTransfer.To mode
);event PodListingCreated(
address indexed account,
uint256 index,
uint256 start,
uint256 amount,
uint24 pricePerPod,
uint256 maxHarvestableIndex,
uint256 minFillAmount,
bytes pricingFunction,
LibTransfer.To mode,
LibPolynomial.PriceType pricingType
);event PodListingFilled(
address indexed from,
address indexed to,
uint256 index,
uint256 start,
uint256 amount
);event PodListingFilled(
address indexed from,
address indexed to,
uint256 index,
uint256 start,
uint256 amount,
uint256 costInBeans
);event PodOrderCreated(
address indexed account,
bytes32 id,
uint256 amount,
uint24 pricePerPod,
uint256 maxPlaceInLine
);event PodOrderCreated(
address indexed account,
bytes32 id,
uint256 amount,
uint24 pricePerPod,
uint256 maxPlaceInLine,
uint256 minFillAmount,
bytes pricingFunction,
LibPolynomial.PriceType priceType
);event PodOrderFilled(
address indexed from,
address indexed to,
bytes32 id,
uint256 index,
uint256 start,
uint256 amount
);event PodOrderFilled(
address indexed from,
address indexed to,
bytes32 id,
uint256 index,
uint256 start,
uint256 amount,
uint256 costInBeans
);event MetapoolOracle(uint32 indexed season, int256 deltaB, uint256[2] balances);event TransferBatch(
address indexed operator,
address indexed from,
address indexed to,
uint256[] ids,
uint256[] values
);event TransferSingle(
address indexed operator,
address indexed from,
address indexed to,
uint256 id,
uint256 value
);event ApprovalForAll(address indexed account, address indexed operator, bool approved);event RemoveDeposit(
address indexed account,
address indexed token,
int96 stem,
uint256 amount,
uint256 bdv
);event UpdatedStalkPerBdvPerSeason(
address indexed token,
uint32 stalkEarnedPerSeason,
uint32 season
);event AddDeposit(
address indexed account,
address indexed token,
uint32 season,
uint256 amount,
uint256 bdv
);event AddDeposit(
address indexed account,
address indexed token,
int96 stem,
uint256 amount,
uint256 bdv
);event RemoveDeposit(
address indexed account,
address indexed token,
uint32 season,
uint256 amount
);event RemoveDeposit(
address indexed account,
address indexed token,
int96 stem,
uint256 amount,
uint256 bdv
);event RemoveDeposits(
address indexed account,
address indexed token,
uint32[] seasons,
uint256[] amounts,
uint256 amount
);event RemoveDeposits(
address indexed account,
address indexed token,
int96[] stems,
uint256[] amounts,
uint256 amount,
uint256[] bdvs
);event WhitelistToken(
address indexed token,
bytes4 selector,
uint256 seeds,
uint256 stalk
);event WhitelistToken(
address indexed token,
bytes4 selector,
uint32 stalkEarnedPerSeason,
uint256 stalk
);event AddWithdrawal(
address indexed account,
address indexed token,
uint32 season,
uint256 amount
);event SeedsBalanceChanged(
address indexed account,
int256 delta
);event RemoveDeposit(
address indexed account,
address indexed token,
int96 stem,
uint256 amount,
uint256 bdv
);event RemoveDeposits(
address indexed account,
address indexed token,
int96[] stems,
uint256[] amounts,
uint256 amount,
uint256[] bdvs
);event URI(string _uri, uint256 indexed _id);event WhitelistToken(
address indexed token,
bytes4 selector,
uint32 stalkEarnedPerSeason,
uint256 stalk
);event WhitelistToken(
address indexed token,
bytes4 selector,
uint32 stalkEarnedPerSeason,
uint256 stalkIssuedPerBdv
);emit RemoveDeposit(msg.sender, token, stem, amount, ogBDV);event SwitchUnderlyingToken(address indexed token, address indexed underlyingToken);event TemperatureChange(uint256 indexed season, uint256 caseId, int8 absChange);event UpdateAverageStalkPerBdvPerSeason(uint256 newStalkPerBdvPerSeason);event GaugePointChange(uint256 indexed season, address indexed token, uint256 gaugePoints);event BeanToMaxLpGpPerBdvRatioChange(uint256 indexed season, uint256 caseId, int80 absChange);event FarmerGerminatingStalkBalanceChanged(
address indexed account,
int256 deltaGerminatingStalk,
Germinate germinationState
);event TotalGerminatingBalanceChanged(
uint256 germinationSeason,
address indexed token,
int256 deltaAmount,
int256 deltaBdv
);event TotalGerminatingStalkChanged(uint256 germinationSeason, int256 deltaGerminatingStalk);event TotalStalkChangedFromGermination(int256 deltaStalk, int256 deltaRoots);event UpdateGaugeSettings(
address indexed token,
bytes4 gpSelector,
bytes4 lwSelector,
uint64 optimalPercentDepositedBdv
);event AddWhitelistStatus(
address token,
uint256 index,
bool isWhitelisted,
bool isWhitelistedLp,
bool isWhitelistedWell
);event RemoveWhitelistStatus(
address token,
uint256 index
);event UpdateWhitelistStatus(
address token,
uint256 index,
bool isWhitelisted,
bool isWhitelistedLp,
bool isWhitelistedWell
);event WhitelistToken(
address indexed token,
bytes4 selector,
uint32 stalkEarnedPerSeason,
uint256 stalkIssuedPerBdv
);event WhitelistToken(
address indexed token,
bytes4 selector,
uint32 stalkEarnedPerSeason,
uint256 stalkIssuedPerBdv,
bytes4 gpSelector,
bytes4 lwSelector,
uint128 gaugePoints,
uint64 optimalPercentDepositedBdv
);event SeasonOfPlenty(
uint256 indexed season,
uint256 amount,
uint256 toField
);event SeasonOfPlenty(uint256 indexed season, address well, address token, uint256 amount, uint256 toField);event ClaimPlenty(
address indexed account,
uint256 plenty
);event ClaimPlenty(
address indexed account,
address token,
uint256 plenty
);event WeatherChange(
uint256 indexed season,
uint256 caseId,
int8 change
);event UpdatedOptimalPercentDepositedBdvForToken(
address indexed token,
uint64 optimalPercentDepositedBdv
);event UpdatedOracleImplementationForToken(
address indexed token,
Implementation oracleImplementation
);event UpdatedGaugePointImplementationForToken(
address indexed token,
Implementation gaugePointImplementation
);event UpdatedLiquidityWeightImplementationForToken(
address indexed token,
Implementation liquidityWeightImplementation
);event FieldAdded(uint256 fieldId);event ActiveFieldSet(uint256 fieldId);event PublishRequisition(LibTractor.Requisition requisition);event CancelBlueprint(bytes32 blueprintHash);event Tractor(address indexed operator, bytes32 blueprintHash);event ShipmentRoutesSet(ShipmentRoute[] newShipmentRoutes);event UpdatedEvaluationParameters(EvaluationParameters);event Receipt(ShipmentRecipient indexed recipient, uint256 receivedAmount, bytes data);event Shipped(uint32 indexed season, uint256 shipmentAmount);event SeasonOfPlentyWell(uint256 indexed season, address well, address token, uint256 amount);event SeasonOfPlentyField(uint256 toField);event MigratedAccountStatus(address indexed account, uint256 stalk, uint256 roots);event MigratedPlot(address indexed account, uint256 indexed plotIndex, uint256 pods);event InternalBalanceMigrated(address indexed account, IERC20 indexed token, int256 delta);event MigratedPodListing(
address indexed lister,
uint256 fieldId,
uint256 index,
uint256 start,
uint256 podAmount,
uint24 pricePerPod,
uint256 maxHarvestableIndex,
uint256 minFillAmount,
LibTransfer.To mode
);event MigratedPodOrder(
address indexed orderer,
bytes32 id,
uint256 beanAmount,
uint256 fieldId,
uint24 pricePerPod,
uint256 maxPlaceInLine,
uint256 minFillAmount
);event AddMigratedDeposit(
address indexed account,
address indexed token,
int96 stem,
uint256 amount,
uint256 bdv
);event FertilizerMigrated(address account, uint128 fid, uint128 amount, uint128 lastBpf);event FarmerGerminatingStalkBalanceChanged(
address indexed account,
int256 deltaGerminatingStalk,
Germinate germinationState
);event FarmerGerminatingStalkBalanceChanged(
address indexed account,
int256 delta,
GerminationSide germ
);event WhitelistToken(
address indexed token,
bytes4 selector,
uint32 stalkEarnedPerSeason,
uint256 stalkIssuedPerBdv,
bytes4 gpSelector,
bytes4 lwSelector,
uint128 gaugePoints,
uint64 optimalPercentDepositedBdv
);event WhitelistToken(
address indexed token,
bytes4 selector,
uint32 stalkEarnedPerSeason,
uint256 stalkIssuedPerBdv,
uint128 gaugePoints,
uint64 optimalPercentDepositedBdv
);event Sow(
address indexed account,
uint256 index,
uint256 beans,
uint256 pods
);event Sow(address indexed account, uint256 fieldId, uint256 index, uint256 beans, uint256 pods);event Harvest(address indexed account, uint256[] plots, uint256 beans);event Harvest(address indexed account, uint256 fieldId, uint256[] plots, uint256 beans);event TemperatureChange(uint256 indexed season, uint256 caseId, int8 absChange);event TemperatureChange(
uint256 indexed season,
uint256 caseId,
int8 absChange,
uint256 fieldId
);event PodListingCreated(
address indexed account,
uint256 index,
uint256 start,
uint256 amount,
uint24 pricePerPod,
uint256 maxHarvestableIndex,
uint256 minFillAmount,
bytes pricingFunction,
LibTransfer.To mode,
LibPolynomial.PriceType pricingType
);event PodListingCreated(
address indexed lister,
uint256 fieldId,
uint256 index,
uint256 start,
uint256 podAmount,
uint24 pricePerPod,
uint256 maxHarvestableIndex,
uint256 minFillAmount,
LibTransfer.To mode
);event PodListingFilled(
address indexed from,
address indexed to,
uint256 index,
uint256 start,
uint256 amount,
uint256 costInBeans
);event PodListingFilled(
address indexed filler,
address indexed lister,
uint256 fieldId,
uint256 index,
uint256 start,
uint256 podAmount,
uint256 costInBeans
);event PodListingCancelled(address indexed account, uint256 index);event PodListingCancelled(address indexed lister, uint256 fieldId, uint256 index);event PodOrderCreated(
address indexed account,
bytes32 id,
uint256 amount,
uint24 pricePerPod,
uint256 maxPlaceInLine,
uint256 minFillAmount,
bytes pricingFunction,
LibPolynomial.PriceType priceType
);event PodOrderCreated(
address indexed orderer,
bytes32 id,
uint256 beanAmount,
uint256 fieldId,
uint24 pricePerPod,
uint256 maxPlaceInLine,
uint256 minFillAmount
);event PodOrderFilled(
address indexed from,
address indexed to,
bytes32 id,
uint256 index,
uint256 start,
uint256 amount,
uint256 costInBeans
);event PodOrderFilled(
address indexed filler,
address indexed orderer,
bytes32 id,
uint256 fieldId,
uint256 index,
uint256 start,
uint256 podAmount,
uint256 costInBeans
);event PodOrderCancelled(address indexed account, bytes32 id);event PodOrderCancelled(address indexed orderer, bytes32 id);event PlotTransfer(
address indexed from,
address indexed to,
uint256 indexed id,
uint256 pods
);event PlotTransfer(
address indexed from,
address indexed to,
uint256 fieldId,
uint256 indexed index,
uint256 amount
);event PodApproval(
address indexed owner,
address indexed spender,
uint256 pods
);event PodApproval(
address indexed owner,
address indexed spender,
uint256 fieldId,
uint256 amount
);event SeedsBalanceChanged(address indexed account, int256 delta);event RemoveWithdrawal(
address indexed account,
address indexed token,
uint32 season,
uint256 amount
);event RemoveWithdrawals(
address indexed account,
address indexed token,
uint32[] seasons,
uint256 amount
);event UpdateGaugeSettings(
address indexed token,
bytes4 gpSelector,
bytes4 lwSelector,
uint64 optimalPercentDepositedBdv
);event Reward(
uint32 indexed season,
uint256 toField,
uint256 toSilo,
uint256 toFertilizer
);event SeasonOfPlenty(uint256 indexed season, address well, address token, uint256 amount, uint256 toField);RemoveDepositAddWithdrawalRemoveWithdrawalsRemoveWithdrawalInternalBalanceChangedAddUnripeTokenChangeUnderlyingChopPickWhitelistTokenDewhitelistTokenRemoveSeasonPodOrderCancelledClaimFertilizerMetapoolOracleMockConvertUpdateTWAPsDeltaBSupplyNeutralBeanDepositBeanWithdrawLPWithdrawDepositRemoveSeasonWithdrawUpdateWhitelistStatusUpdatedEvaluationParametersReceiptShippedSeasonOfPlentyWellSeasonOfPlentyFieldMigratedAccountStatusMigratedPlotInternalBalanceMigratedMigratedPodListingMigratedPodOrderAddMigratedDepositFertilizerMigratedPodApproval